gpt4 book ai didi

c# - MongoDB for .Net 简单显示数据示例

转载 作者:可可西里 更新时间:2023-11-01 10:02:45 27 4
gpt4 key购买 nike

我正在尝试将在“mongodb://localhost:27017”上运行的 MongoDB 中的数据显示到 .NET 应用程序。

这是数据库的样子

enter image description here

这个例子来自MongoDB C# Driver page on github而且我什至无法通过编译时错误:
1. 我必须删除 await
2. 我现在得到的错误在 list

foreach statement cannot operate on variables of type 'System.Threading.Tasks.Task>' because 'System.Threading.Tasks.Task>' does not contain a public definition for 'GetEnumerator'

using MongoDB.Bson;
using MongoDB.Driver;
using System;

namespace MongoTest2
{
class Program
{
public class Person
{
public ObjectId Id { get; set; }
public string Name { get; set; }
}

static void Main(string[] args)
{
var client = new MongoClient("mongodb://localhost:27017");
var database = client.GetDatabase("test");
var collection = database.GetCollection<Person>("messages");

collection.InsertOneAsync(new Person { Name = "Jack" });

var list = collection.Find(x => x.Name == "Jack")
.ToListAsync();

foreach (var person in list)
{
Console.WriteLine(person.Name);
}
}
}
}

谁能分享一个简单的工作代码片段,或工作教程的链接?这是第二天,我仍然被这个问题所困扰。

最佳答案

您应该调用同步方法:InsertOne()ToList() 或等待异步方法的结果:

collection.InsertOneAsync(new Person { Name = "Jack" }).Wait();

var list = collection.Find(x => x.Name == "Jack")
.ToListAsync().Result;

关于c# - MongoDB for .Net 简单显示数据示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40884694/

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