返回语句
本文关键字:语句 返回 | 更新日期: 2023-09-27 18:25:12
我有一个自己无法解决的问题。在我的getAlldata()
方法中,我需要返回集合kljenti
中的所有数据。我不知道在方法声明和返回语句中需要使用什么类型的数据类型。我尝试了很多解决方案,但都不起作用。
public void getAllData () {
try {
var connectionString = "mongodb://172.16.1.24:27017";
var client = new MongoClient(connectionString);
var server = client.GetServer();
var database = server.GetDatabase("kljenti");
var Client = new MongoClient();
var DB = Client.GetDatabase("knjigoMata");
var kolekcija = DB.GetCollection<BsonDocument>("kljenti");
var allDocuments = kolekcija.Find(new BsonDocument()).ToListAsync();
foreach (var kljenti in allDocuments) {
Console.WriteLine(kljenti);
}
return allDocuments;
} catch {
MessageBox.Show("Nemogu prikazati podatke o korisnicima");
}
}
我建议将klijenti表反序列化为c#对象。1.创建一个表示klijenti表的类。例如:
public class Klijent
{
public string Name {get;set;}
public string Address {get;set;}
}
2.然后使用
List<Klijent> res = db.FindAs<Klijent>.ToList();
- List是您要求的退货类型
Task<List<BsonDocument>>
。因此,要使此工作正常,您必须等待任务完成,然后返回任务Result。
例如:
public List<BsonDocument> getAllData()
{
try
{
var connectionString = "mongodb://172.16.1.24:27017";
var client = new MongoClient(connectionString);
var server = client.GetServer();
var database = server.GetDatabase("kljenti");
var Client = new MongoClient();
var DB = Client.GetDatabase("knjigoMata");
var kolekcija = DB.GetCollection<BsonDocument>("kljenti");
Task<List<BsonDocument>> task = kolekcija.Find(new BsonDocument()).ToListAsync();
task.Wait();
List<BsonDocument> allDocuments = task.Result;
foreach (var kljenti in allDocuments)
{
Console.WriteLine(kljenti);
}
return allDocuments;
}
catch
{
MessageBox.Show("Nemogu prikazati podatke o korisnicima");
}
}