退货声明

本文关键字:声明 | 更新日期: 2023-09-27 18:25:01

我的c#代码中的return语句有问题
我不知道我应该在这个例子中使用什么样的数据类型,也不知道它应该是什么样的返回语句

public async List<string> getAllData() 
{
    try 
    {
        string connectionString = "mongodb://172.16.1.24:27017";
        MongoClient client = null;
        client = new MongoClient(connectionString);
        MongoServer server = null;
        server = client.GetServer();
        MongoDatabase database = null;
        database = server.GetDatabase("kljenti");
        var Client = new MongoClient();
        var DB = Client.GetDatabase("knjigoMata");
        var collection = DB.GetCollection<BsonDocument>("kljenti");
        List <string> lista = await collection.Find(new BsonDocument()).ToListAsync();
        foreach (var kljenti in lista) 
        {
            Console.WriteLine(kljenti);
        }
        return lista;
    } 
    catch 
    {
        MessageBox.Show("Nemogu prikazati podatke o korisnicima");
    }
}

退货声明

如果使用async,则返回类型必须是以下类型之一:

  • Task
  • Task<T>
  • void

不管内部代码是什么,都要确保返回类型与其中任何一个都一致。

现在,如果您想返回一个特定的数据类型作为结果,那么不妨使用Task。

示例:Task<int>Task<string>

阅读此链接以获得进一步的参考:异步返回类型的MSDN官方链接

希望这能有所帮助。