官方MongoDB .NET驱动程序提供与MongoDB的异步交互。
public class MongoDbAddressCollection { private IMongoCollection<Addresses> collection = database.GetCollection<Addresses>("AddressCollection"); public IEnumerable<Addresses> Where(System.Linq.Expressions.Expression<Func<Addresses, bool>> filter = null) { var items = collection.AsQueryable().Where(filter); if (items == null) return null; return items.ToList(); } } public class Test { public void DoSomthingWithAddresses() { MongoDbAddressCollection addressCollection=new MongoDbAddressCollection(); //exception occurs in MongoDbAddressCollection.Where method when executing the ToList(). List<Addresses> homeAddresses=addressCollection.Where(x=>x.AddressType==(byte)EnumAddressType.HomeAddress); foreach(var address in homeAddresses) { //do stuff } } }
我已经简化了请求(很多),并认为可以使用骨料进行优化。
var configurationSection = _configuration.GetSection("MongoDb"); MongoUrl mongoUrl = new MongoUrl(configurationSection["connectionString"]); var databaseName = configurationSection["databaseName"]; var userName = mongoUrl.Username; var password = mongoUrl.Password; MongoClientSettings settings = new MongoClientSettings(); settings.Server = mongoUrl.Server; settings.UseSsl = true; settings.SslSettings = new SslSettings(); settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12; settings.ConnectTimeout = TimeSpan.FromMinutes(1); MongoIdentity identity = new MongoInternalIdentity(databaseName, userName); MongoIdentityEvidence evidence = new PasswordEvidence(password); settings.Credential = new MongoCredential("SCRAM-SHA-1", identity, evidence); var mongoClient = new MongoClient(settings);
我们在应用程序中使用 mongo dB,并以 C# 作为语言。 目前我们正在将整个文档作为 C# 中的对象加载。 对内存中发生的文档进行更改,看起来成本非常高......
在 C# 中像 SQL 查询一样运行直接 Mongo 查询的可能方法
我不再使用 Mongo DB 和 C# (.Net) 来构建我的 Web 应用程序。我想在我的 .Net 应用程序中运行 Mongo 查询,就像使用 ADO.net 的 SQL 查询一样。直接运行 Mongo que 的可能方法有哪些...
MongoWaitQueueFullException:获取服务器连接的等待队列已满
有时,当(同步)插入一小堆不同的文档时,我会收到以下异常(请参阅下面的完整堆栈跟踪): MongoDB.Driver.MongoWaitQueueFullException:w...
如何在 Mongo 3.1.0 c# 驱动中调用 FilterDefinition 的 Render 方法?
升级到 mongo c# 驱动程序 3.1.0 此代码不再编译: 公共静态 BsonDocument ToBsonDocument(此 FilterDefinition 过滤器) { var serializerRegistry = BsonSeri...
.NET 8 - 如何使用依赖注入来注入两个 MongoDB 客户端
如何使用依赖注入 (.NET 8) 注入两个 MongoDB 客户端?我有一个场景,我需要从 Db1/collection1 读取内容,然后将某些内容保存到 Db2/collection2。在我的初创公司中,我有...
在 MongoDB C# 中为模型构造函数指定 MapCreator 仍然会导致错误
我正在尝试使用 MongoDB C# 驱动程序并在我的模型上使用 GeoJSON .Net 库而不是 MongoDB GeoJSON 类将对象存储到 MongoDB 集合(我不想实现
Query.Near 的 maxDistance 参数不起作用
我正在使用 MongoDB 的 C# 驱动程序,并尝试使用 Query.Near to work 返回中心点 5、10、25 或 50 英里内的待售房屋。这是查询: var close = Query.Near("坐标...
我有以下使用 .NET MongoDb 驱动程序的 C# 函数,目前运行良好。 它排除了所有查询返回的 RedactedPropertyList 集合中的某些字段
添加聚合管道阶段,更改为 MongoDB C# 驱动程序中的另一个模型或类型
如何添加聚合管道阶段来更改正在运行聚合的收集模型输出? X/Y 问题:如何聚合查找在
我在 32 位 Windows7 机器上使用 MongoDB 2.2.2。我在 .js 文件中有一个复杂的聚合查询。我需要在 shell 上执行此文件并将输出定向到 CSV 文件。我保证
InsertOneAsync 后 MongoDB id 保持为空
我有一个基类Entity,它有一个字符串Id成员和一个派生类A。 但是,当创建派生类的新实例并使用 InsertOneAsync 将其添加到我的集合时,文档...
有时 FindAsync()、FindOneAndReplaceAsync()、UpdateOneAsync() 需要超过 25 分钟才能完成
我正在使用 .NET 驱动程序在我的 .NET 应用程序中查询 Mongo。我正在使用存储库模式。有时 FindAsync()、FindOneAndReplaceAsync()、UpdateOneAsync() 方法花费的时间超过...
如何序列化没有空字段或空对象的BsonDocument? 例如 { “key1”:空, “密钥2”:100 } 应序列化为: { “密钥2”:100 } 阿尔...