gpt4 book ai didi

c# - 修饰符 async 对此项目无效

转载 作者:行者123 更新时间:2023-11-30 13:23:31 34 4
gpt4 key购买 nike

这似乎不是数百个具有相同错误的其他问题的重复。我查看了所有这些,发现它们之间没有关联。

我正在制作一个小笔记应用程序并尝试从目录中读取文件。按照 MSDN 示例,我有以下代码,但它给我一个错误:


Error 1 The modifier 'async' is not valid for this item C:\Users\Jase\documents\visual studio 2012\Projects\AppNameHere\AppNameHere\DataModel\AppNameHereDataSource.cs 192 9 AppNameHere


我的代码是:

    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()

首先,async 必须在访问修饰符 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# - 修饰符 async 对此项目无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10997174/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com