我尝试创建文件选择和需要列表文件。我正在使用await运算符,但无法正常工作。
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
StorageFolder folder = KnownFolders.MusicLibrary;
List<StorageFile> listOfFiles = new List<StorageFile>();
await RetriveFilesInFolders(listOfFiles, folder);
// as a result of above code I have a List of 5 files that are in Music Library
List<IStorageItem> filesFolders = (await folder.GetItemsAsync()).ToList();
List<StorageFile> items = (await folder.GetFilesAsync(CommonFileQuery.OrderByName)).ToList();
}
private async Task RetriveFilesInFolders(List<StorageFile> list, StorageFolder parent)
{
foreach (var item in await parent.GetFilesAsync()) list.Add(item);
foreach (var item in await parent.GetFoldersAsync()) await RetriveFilesInFolders(list, item);
}
和Visual Studio show
等待&#39;运算符只能在异步方法中使用。考虑 使用&#39; async&#39;标记此方法修饰符并改变其回报 输入&#39;任务&#39;
答案 0 :(得分:1)
您在await
方法中使用OnNavigatedTo
运算符,该方法未使用async
修饰符标记为异步。
我说你得到的信息很清楚。