Windows runtime BackgroundTaskCompletedEventArgs.CheckResult何时引发异常?
Windows runtime BackgroundTaskCompletedEventArgs.CheckResult何时引发异常?,windows-runtime,windows-store-apps,Windows Runtime,Windows Store Apps,BackgroundTaskCompletedEventArgs.CheckResult的文档说明: 如果后台任务完成事件报告了错误,则引发异常 我曾尝试创建一个后台任务,该任务在其Run方法中引发异常,但当我订阅其Completed事件并在其完成时调用CheckResult时,不会引发异常 CheckResult何时实际抛出异常?它应该完全按照您所描述的那样工作:如果在IBackgroundTask的Run方法中抛出异常,则BackgroundTaskCompletedArguments.Ch
BackgroundTaskCompletedEventArgs.CheckResult的文档说明:
如果后台任务完成事件报告了错误,则引发异常
我曾尝试创建一个后台任务,该任务在其Run
方法中引发异常,但当我订阅其Completed
事件并在其完成时调用CheckResult
时,不会引发异常
CheckResult
何时实际抛出异常?它应该完全按照您所描述的那样工作:如果在IBackgroundTask
的Run
方法中抛出异常,则BackgroundTaskCompletedArguments.CheckResult()
方法在您调用它时抛出异常
确保您的后台任务实际运行,并且您的应用程序处于前台,否则将不会引发“已完成”事件
如果您想在工作示例上试用,请下载并对其进行两次修改:
- 在
Task\ServicingComplete.cs
addthrow new Exception()中
在Run
方法的最后
- 在
BackgroundTask\ServicingCompleteTask.xaml.cs
addargs.CheckResult()中代码>在OnCompleted
方法的开头
如果现在运行应用程序,从UI注册任务,并在应用程序位于前台时从Visual Studio的调试位置
工具栏触发它,您将注意到CheckResult()
调用将按预期引发异常