This question already has an answer here:
UWP app: FileOpenPicker PickSingleFileAsync() can't await

(1个答案)


3年前关闭。




我有以下代码显示应用程序中的文件选择器:
var FilePicker = new Windows.Storage.Pickers.FileOpenPicker();
FilePicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.Thumbnail;
FilePicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.ComputerFolder;
FilePicker.FileTypeFilter.Add(".pcs");
FilePicker.FileTypeFilter.Add(".pcp");

Windows.Storage.StorageFile File = await FilePicker.PickSingleFileAsync();

但是,Windows.Storage.StorageFile File = await FilePicker.PickSingleFileAsync()在编译期间导致此错误:



为什么会这样呢?我从MSDN获得了代码。有人可以帮我吗?

注意:我正在为Universal Windows编程。

最佳答案

您在使用中缺少对System的明显引用。

using System;

为什么您需要此引用,为什么它抱怨它缺少看似未使用的方法?

使用await,它实际上调用WindowsRuntimeSystemExtensions.GetAwaiter,它是IAsyncOperation的扩展方法(以使TaskAwaiter等待)。由于WindowsRuntimeSystemExtensions驻留在System命名空间中,因此您需要该using来获取扩展方法。

08-26 18:55