UWP - BackgroundTask和ContactManager
我面临的问题是,如果我尝试从BackgroundTask访问ContactManager,则会收到System.IO.FileLoadException。UWP - BackgroundTask和ContactManager
public async void Run(IBackgroundTaskInstance taskInstance)
{
BackgroundTaskDeferral deferral = taskInstance.GetDeferral();
test();
deferral.Complete();
}
private async void test()
{
ContactStore contactStore = await ContactManager.RequestStoreAsync();
}
的BackgroundTasks正常启动,但只要我称之为“测试”抛出异常:从我的主要应用程序中调用它的时候
相同的代码工作得很好。
试图改变自己的异步无效测试异步任务测试
好了... ...
原因是,我切换到VS2017开发的同时,得到了在的的project.json一个错误的依赖backgroundtask:
虽然主要项目有:
"dependencies": { "Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0" },
后台任务获得:
"dependencies": { "Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2" },
编辑到5.0.0后都去了完美
实际上,依赖关系并没有错,你应该更新到最新如果可能,除错误修正外,您将获得新的API。 –
不幸的是,我现在卸载VS2015安装2017年一个,所以我不能用我自己的测试,但某些API都不在后台提供任务如此测试我将提及的方法:
1-创建一个新类型为Class Library的解决方案。
2-把你想要的方法。
3-将类库作为后台任务解决方案的参考。
3-打电话给你的方法,这种方法classLib.className.FuncName();
4-如果工作或看不到。
仍然是同样的问题: 无法加载文件或程序集'System.Runtime.WindowsRuntime 找到的程序集的清单定义与程序集引用不匹配。 (来自HRESULT的异常:0x80131040)“ – Schwoabaseggele
你可以共享一个repro项目吗?它对我来说工作正常。你是否也等待正面测试呼叫? –