【mongodb replica set搭建】教程文章相关的互联网学习教程文章

c# – 在MongoDb中查询超时

有人知道如何在MongoDb的服务器端添加查询超时?不是客户端超时(我正在使用C#驱动程序).我有一个问题,客户端崩溃,与Mongo的连接死亡,但服务器继续执行查询.这会导致服务器队列中出现大量不必要/过时的查询.解决方法:如果您有来自先前客户端连接的这些长时间运行的查询要停止/终止,那么您需要手动终止它们: http://www.mongodb.org/display/DOCS/Viewing+and+Terminating+Current+Operation 或者,在新客户端启动时,您可以执行更具编...

嵌入式MongoDB文档在使用C#驱动程序保存时未获取ID【代码】

当我有一个包含文档列表的根文档并且我保存/插入时,根文档总是从MongoDB获取一个ID,但列表中的文档没有,它们与ObjectId.Empty保持一致.我不确定我做错了什么或者这是否是预期的行为? 这是我正在尝试做的一个例子:鉴于课程:public class Foo {public ObjectId Id { get; set; }public string Name { get; set; }public IList<Bar> Bars { get; set; } }public class Bar {public ObjectId Id { get; set; }public string Name { ...

C#如何将数组插入对象mongodb【代码】

目前我正在使用C#开发一个应用程序,我想在MongoDB集合中添加一些数据.我正在尝试将一个数组添加到Employee对象,但我正在努力让它正常工作. 当我查看其他帖子时,我遇到了使用BsonDocument的语法,如下所示:var document = new BsonDocument { { "author", "joe" }, { "comments", new BsonArray {new BsonDocument { { "author", "jim" }, { "comment", "I disagree" } },new BsonDocument { { "author", "nancy" }, { "comment", "...

MongoDb C#动态创建索引和集合【代码】

我正在使用C#(MongDB驱动程序)动态创建集合.我发现只有在插入至少一个文档时才会创建集合.我正在做如下.由于我为每个插入创建索引调用CreatOne,每次插入新文档时它会重新创建索引吗?有没有更好的方法来动态创建集合和索引?public static void CreatAndInsert(double value1, double value2, string collectoinName){var connectionString = "mongodb://localhost";var client = new MongoClient(connectionString);var database ...

c# – 在MongoDB中执行设置差异【代码】

我有两个不同的集合,有一个共同的字段,比如UserId.还有其他属性可以限定UserIds. 例如: 集合1:{UserId,SellsToUserId} 收集2:{UserId,BuysFromUserId} 我想运行一个操作,给我两组之间的区别. 示例查询将是:获取给定UserId销售的所有UserID,但不购买. 伪代码解决方案var sellToCursor = collection1.Find(Query.EQ("UserId", Me)).SetFields({SellsToUserId});var buyFromCursor = collection2.Find(Query.EQ("UserId", Me)).Se...

c# – .net中的mongodb orm / odm?

所以,我开始在我的新应用程序中开始使用mongodb而不是sql server.我使用sql server时遇到的好处之一就是拥有一个ORM层,如实体框架或DevExpress XPO.我听说过mongo的NoRM,但我查看了GitHUB网站,它说不再维护了.所以我想知道是否有人知道我可以使用C#.NET应用程序当前维护的ORM / ODM类型解决方案来封装我的模型类与持久层的交互.解决方法:以与SQL相同的方式思考Mongo是错误的.将Mongo视为坚持c#模型的一种方式. Construct => Save->...

Mongodb c#驱动程序 – 将ID复制到插入的另一个字段【代码】

我正在使用.Net – mongodb c#driver for monngodb.插入文档时,我想将生成的[BsonId] ObjectId Id字段复制到文档中的另一个字段(复制值) 我可以运行Insert,它将生成密钥,然后运行update以将密钥复制到另一个字段,但这将使db处于“软”状态一段(短暂)时间. 是否有可能“原子地”这样做或者我使用mongodb错了吗?解决方法:如果您希望更新是原子的,那么您无法真正做到这一点. 我建议你做的不是让驱动程序设置Id,而是使用ObjectId.Ge...

MongoDB C#驱动程序超时【代码】

我试图将一些数据发布到我的远程mongodb实例,这是一个副本集,但是我得到一个超时异常,说没有找到主机?我也读过并在连接字符串的末尾添加了?connect = replicaSet,但这没有帮助. 这是我的连接字符串private MongoClient client = new MongoClient("mongodb://10.250.8.1:27017,10.250.8.2:27017,10.250.8.3:27017?connect=replicaSet");这是抛出的异常:{"A timeout occured after 30000ms selecting a server using CompositeSer...

MongoDB – 使用C#驱动程序按日期和时间搜索【代码】

您好我想在MongoDB中使用C#驱动程序查找两个日期(时间)之间的条目,但我使用的查找过滤器方法忽略时间并仅按日期搜索(我认为).我究竟做错了什么? 我的POCO:public class TestClassForMongo {public ObjectId Id { get; set; }public DateTime CreatedDateUtc { get; set; }public string Message { get; set; } }我的搜索代码:IMongoCollection<TestClassForMongo> collection = db.GetCollection<TestClassForMongo>("mongoTest...

转换.NET MongoDB C#Driver不支持的对象【代码】

我在MongoDB中存储文档,由以下类表示: public class Entity {public string Id;public string Name;public List<EntityAttribute> Attributes = new List<EntityAttribute>(); }public class EntityAttribute {public string Key;public object Value;public string DataType; }“EntityAttribute”上的“Value”对象显然可以是任何类型的对象(string,int,float等),这就是意图. 当我的应用尝试使用关系运算符执行查询时,例如“<”...

C#/ MongoDB:如何保持连接存活?

我正在编写一个访问远程MongoDB的C#应用??程序.在查询数据库时如何继续连接?我应该实施某种开/关机制吗?或者连接一次并暂停时会更好吗?我正在使用MongoDB / C#官方驱动程序.解决方法:在引擎盖下,MongoDB C#驱动程序维护一个连接池,这在.NET中非常典型.该池通过为您维护一些打开的连接来工作.当您需要连接时,池将为您提供现有连接(如果有连接). 要避免的问题是连接中的泄漏 – 如果连接被打开而没有再次关闭,那么您将破坏连接池的...

c# – 在MVC中自动将mongodb ObjectId作为字符串与Json.NET一起重新编写【代码】

我有一个MVC .net项目,我正在使用mongodb.在我的一些控制器中,我使用ObjectId返回JsonResult.我希望ObjectId被序列化为字符串.我发现了一个类似的问题并使用了这个答案,使用自定义的JsonConverter:JSON.NET cast error when serializing Mongo ObjectId 但是,当我尝试返回一个JsonResult(使用返回Json(myObject))时,根本不会调用JsonConverter. 当我使用return JsonConvert.SerializeObject(myObject)返回一个字符串时;到达JsonCo...

将SetFields与MongoDB C#驱动程序2.0一起使用【代码】

使用旧驱动程序,我可以指定我想从查询返回的字段,如下所示:var cursor = Collection.Find(query).SetFields(Fields<MealPlan>.Exclude (plan => plan.Meals));如何使用2.0驱动程序实现此目的?解决方法:你需要在IFindFluent上使用Projection方法(这是Find和Projection返回的方法):var findFluent = Collection.Find(query).Projection(Fields<MealPlan>.Exclude (plan => plan.Meals))现在,这最终将生成BsonDocuments的游标,因为...

c# – MongoDB没有查询【代码】

嗨,我试图通过使用Facebook ID列表作为参数来查询我的Mongo数据库,以便返回具有相应帐户的用户列表.该方法在Unity编辑器中工作正常,但是当我在iOS上运行时,我得到一个构造函数错误(我已经设置了一个空白的默认构造函数以解决问题,但它仍然无效) 初始方法public void FetchData(){//data = Mongo.Instance.players.FindAll().ToList();if (FB.IsLoggedIn){FB.API("me/friends", HttpMethod.GET, FriendsHighscoreHndlr);}}回调方法p...

c#MongoDB(noRM) – 包含嵌入文档的存储库模式【代码】

我正在开发一个类似于Stack Overflow的模型的应用程序(问题/答案等……)Modelling a NoSQL Forum Application with C# / ASP.net MVC 该模型看起来像这样(简化)class Question {public string Title { get; set; }public string Body { get; set; }public DateTime DateCreated { get; set; }public string UserName { get; set; }public List<Answer> Replies { get; set; } }class Answer {public string Body { get; set; }publ...