UWP - BackgroundTask和ContactManager

时间:2017-04-01 12:11:00

标签: background uwp contact

我遇到的问题是,如果我尝试从BackgroundTask访问ContactManager,我会收到System.IO.FileLoadException。

从我的主应用程序调用它时,相同的代码运行良好:

with test_data as (
    select 1 num from dual union all
    select 4  from dual union all
    select 6  from dual union all
    select 8  from dual union all
    select 3  from dual union all
    select 9  from dual union all
    select 0  from dual
)
select min(gap) min_gap
from (
    select num, lag(num) over (order by num)+1 gap
    from test_data
    )
where num != gap
;    
MIN_GAP
------------------
                 2

BackgroundTasks正常启动,但只要我调用“test”就会抛出异常。

3 个答案:

答案 0 :(得分:0)

尝试将async void test更改为async Task test

答案 1 :(得分:0)

好的,明白了......

原因是我在开发时切换到VS2017并且在backgroundtask的project.json中得到了错误的依赖:

虽然主要项目有:

"dependencies": { "Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0" },

后台任务得到了:

"dependencies": { "Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2" },

编辑到5.0.0后,一切都很完美

答案 2 :(得分:0)

不幸的是我现在正在卸载VS2015以安装2017,因此我不能自己测试,但是后台任务中没有一些API,所以测试我将提到的方法:

1-创建一个类型为Class Library的新解决方案。

2-把你想要的方法放在那里。

3-使类库成为后台任务解决方案的参考。

3-以这种方式致电您的方法classLib.className.FuncName();

4-看它是否有效。