Windows 10 FIle查询问题

时间:2015-05-26 21:56:59

标签: c# windows-phone windows-phone-8.1 windows-8.1 windows-10

我正在尝试按照说明从Windows 10中的已知文件夹中获取文件,如下所示,

https://msdn.microsoft.com/en-us/library/windows/apps/br227275.aspx

            try
            {
                StorageFolder folder = KnownFolders.PicturesLibrary;
                IReadOnlyList<StorageFile> pics = await folder.GetFilesAsync(Windows.Storage.Search.CommonFileQuery.OrderByDate, 0, 20);
                Debug.WriteLine(pics.Count);
            }

            catch(Exception ex)
            {
                Debug.WriteLine(ex.Message);
            }

相同的代码适用于WindowsPhone 8.1 SDK。但在Windows 10移动设备上却没有。我得到的例外是这个,

  

指定的查询选项不适用于此文件夹,因为   它不在图书馆或家庭组中。仅限库中的文件夹   或者家庭组支持所有选项。

有关如何解决此问题的任何想法?

4 个答案:

答案 0 :(得分:1)

Windows 10仍在使用中。手机上的最新版本解决了这个问题。

答案 1 :(得分:-1)

对于Windows 10桌面,Windows 10移动设备是相同的。来自MSDN的示例代码:

尝试使用没有try catch块的代码。另外,请注意这是使用异步编程技术。

答案 2 :(得分:-1)

您需要提供图片库功能才能访问图片并从中获取相关信息。

进入应用的解决方案资源管理器&gt;&gt;那么&#34; Package.appxmanifest&#34; &GT;&GT;那么&#34;能力&#34; &GT;&GT;选择&#34;图片库&#34; (如果未选中,则选择它。)

重建项目后,您可以成功运行代码。 希望这能帮到你: - )

答案 3 :(得分:-1)

更新了答案,下面代码有效,经过测试

StorageFolder folder = KnownFolders.PicturesLibrary;
StorageFileQueryResult query = folder.CreateFileQuery(Windows.Storage.Search.CommonFileQuery.OrderByDate);
IReadOnlyList<StorageFile> pics = await query.GetFilesAsync(0, 20);
Debug.WriteLine(pics.Count);

有一个示例可以在MSDN上获取文件夹查询,并将其应用于文件查询 https://msdn.microsoft.com/en-us/library/windows/apps/xaml/jj150593.ASP