Image OneDrive映像呈现文件时如何捕获错误。OpenAsync错误

Image OneDrive映像呈现文件时如何捕获错误。OpenAsync错误,image,error-handling,Image,Error Handling,在一个项目中,我尝试为用户提供从其个人库中选择图像的选项。没有什么特别的 当用户从本地imagelibrary中选择所需的图像时,这将非常完美。但是当从OneDrive选择图像时,会发生错误,我无法捕获错误。错误源似乎在file.OpenAsync方法中 看起来可能与所选图像的大小有关,但我无法判断,因为我无法捕捉到错误 下面是代码片段(实际上它取自XAML image SDK示例) 正如您所看到的,虽然有一个try-catch,但仍然会弹出一个未捕获的错误,通过它,我可以检测到它发生在队列中

在一个项目中,我尝试为用户提供从其个人库中选择图像的选项。没有什么特别的

当用户从本地imagelibrary中选择所需的图像时,这将非常完美。但是当从OneDrive选择图像时,会发生错误,我无法捕获错误。错误源似乎在file.OpenAsync方法中

看起来可能与所选图像的大小有关,但我无法判断,因为我无法捕捉到错误

下面是代码片段(实际上它取自XAML image SDK示例)

正如您所看到的,虽然有一个try-catch,但仍然会弹出一个未捕获的错误,通过它,我可以检测到它发生在队列中

Await file.OpenAsync(Windows.Storage.FileAccessMode.Read)

现在我的问题是:我如何捕捉这个错误?上面这一行是错误的根源,我说得对吗?如果不是这样的话:是什么以及如何克服?

经过大量的实验,我想我找到了解决办法

当选择StorageFile作为映像的源时,最好检查StorageFile.Attributes

选定的文件将带有属性值。对于来自OneDrive的文件,属性值为544(将Archive和LocallyComplete组合时得到的值)。因此,必须先下载该文件,然后才能使用该文件

这里解释如下:

Await file.OpenAsync(Windows.Storage.FileAccessMode.Read)