c# – 修饰符async对此项无效
发布时间:2020-12-16 00:20:22 所属栏目:百科 来源:网络整理
导读:这似乎与具有相同错误的数百个其他问题重复.我看了他们所有人,发现他们是无关的. 我正在制作一个小笔记应用程序,我正在尝试从目录中读取文件.在MSDN示例之后,我有以下代码,但它给出了一个错误: Error 1 The modifier ‘async’ is not valid for this item
这似乎与具有相同错误的数百个其他问题重复.我看了他们所有人,发现他们是无关的.
我正在制作一个小笔记应用程序,我正在尝试从目录中读取文件.在MSDN示例之后,我有以下代码,但它给出了一个错误:
我的代码是: async public NotesDataSource() { StorageFolder documentsFolder = KnownFolders.DocumentsLibrary; StringBuilder outputText = new StringBuilder(); IReadOnlyList<StorageFile> fileList = await documentsFolder.GetFilesAsync(); outputText.AppendLine("Files:"); foreach (StorageFile file in fileList) { if (file.FileType == "txt") { outputText.Append(file.Name + "n"); } } // lots of irrelevant code removed. } 我不明白这里发生了什么.我跟着一切都是“T”.有人可以帮忙吗? 谢谢! 解决方法
您的方法签名不正确.看它:
async public NotesDataSource() 首先,异步必须在访问修饰符IIRC之后. 其次,您要么尝试创建异步构造函数(您不能这样做),要么尝试编写没有返回类型的方法(同样无效). 试试这个: public async Task NotesDataSource() 如果你认为它是一种方法就是这样.如果要有效地创建异步构造函数(或接近它的东西),则必须使用异步静态方法: public static async Task<NotesDataSource> CreateInstance() { // Do async stuff here which fetches all the necessary data... return new NotesDataSource(...); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- c – 如何使用std :: rel_ops自动提供比较运算符?
- 在反应本机webview中为触摸事件创建一个漏洞
- ruby-on-rails – facebook打开图形爬虫在rails操作中触发j
- ios – 找不到RestKit / RestKit.h文件.
- 如何轻松制作iPhone发布图片?
- 如何在C/C++中执行RGB-> YUV转换?
- React Native之ScrollView控件详解
- 在xml中添加<!DOCTYPE >节点
- c# – 在ViewModelViewHost控件中托管的View和ViewModel中使
- flex socket.writeObject()发送对象,java接收flex socket发