问题标签 [mongodb-.net-driver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1241 浏览

mongodb - 在 Web 环境中有效地使用 MongoDB

我正在从 NHibernate 背景接近 MongoDB,我想知道在 Web 上下文中有效使用的最佳实践是什么。

使用 NHibernate,我为应用程序的生命周期创建了一个 ISessionFactory,然后为每个请求使用一个 ISession 实例。以下面的代码为例(我希望这是典型的,如果不理想请更正)。

我通常会为Mongo每个应用程序或每个请求提供一个类的单个实例吗?怎么样var db?或者我是否在需要数据库交互时使用下面的所有代码?

更新:我正在使用 mongodb-csharp(尽管如果存在,请提出更好的替代方案)

谢谢

0 投票
1 回答
4048 浏览

mongodb - mongodb-csharp 驱动程序 - 如何将属性保存为参考而不是嵌入?

我们正在为我们的 C#.NET 项目在 Mongo DB 上做一个小峰值,看看它是否适合我们,我在 samus 的 mongodb-csharp 驱动程序上遇到了一个小问题,我不确定如何实现.

给定以下简化模型:

正如上面的评论所暗示的,我们试图弄清楚如何将 Site 保存为引用类型而不是嵌入到 Placement 中。站点是它自己的顶级集合,独立于每个活动而变化。

理想情况下,我想使用 MongoConfigurationBuilder 来执行此操作,而不必修改我的 POCO。我似乎找不到任何关于如何完成的文档。

我希望它会像这样简单:

但是当我使用以下代码时,这仍然是嵌入站点:

这给了我们:

而我们想要的东西更像:

我不确定这是否是我们最终得到的确切文件,但你明白了。

我觉得好像我遗漏了一些明显的东西,但是没有更好的关于驱动程序这方面的文档,我有点在黑暗中拍摄。我什至查看了源代码中的测试,但无法弄清楚。

有谁知道如何做到这一点?是否可以?

0 投票
1 回答
792 浏览

c# - 无法编辑此数据网格视图中的任何值

我在 Mongodb 的列表中有一个 datagridview bould。但是我无法编辑网格。我不知道为什么会这样?

0 投票
1 回答
1615 浏览

c# - 在将文档作为结果返回之前更新文档的MongoDB存储过程(javascript函数)?

我正在将系统从 sql server 转换为 mongodb。我相信该项目是 mongodb 的一个很好的候选者,但这不是我的问题。

在 sql 数据库中,我有一个存储过程,用于返回一组需要处理的记录。所以,我在 sql 数据库中处理了 BIT 和 LastProcessingRequestDate DATETIME 字段。在客户端更新要处理的记录 = 1 之前,记录需要 1 秒到 5 分钟在客户端进行处理。

我的存储过程将返回前 100 条记录,其中 Processed = 0 且 LastProcessingRequestDate < DATEADD(minute, -10, NOW()),但在返回每条记录之前,它会更新 LastProcessingRequestDate=NOW()。这将确保在我完成处理它们之前,我不会取回我已经在处理的任何记录(有一个线程负责保持一个充满要处理的记录的队列,多个线程从中出列) .

我想知道将这种情况转移到 MongoDB 的最佳做法是什么。我的一个想法是创建一个执行类似操作的 mongodb 函数,但我没有看到任何此类函数的示例。另一种是简单地使用相同的逻辑,但在客户端处理 LastProcessingRequestDate 的更新。这对我来说似乎不太理想。

有没有人有一个例子说明我如何在 mongodb 中编写一个 javascript 函数来做到这一点?谢谢!

0 投票
2 回答
678 浏览

c# - MongoDB:C# 还是 JavaScript?

我没有深入使用 MongoDB。但我想将它与 C# 驱动程序一起使用。我想这个驱动程序中并非所有功能都可用(对吗?)。或者例如,很容易找到一些用 javascript 编写的代码,因此似乎很容易使用它,而无需在 C# 驱动程序中映射/查找适当的方法。我知道 MongoDB 是用 C++ 编写的,但据我所知,主要/本机驱动程序语言是 javascript。所以我对如何从 C# 运行 javascript 来使用 MongoDB 很感兴趣?这是否有助于从 MongoDB 获取所有功能?如果是,请告诉我,如何在 C# 中嵌入和运行 javascript?当然,我需要快速且易于使用的实现,你知道的;)))))

编辑:哪个驱动程序会更快:C# 还是 JavaScript?

0 投票
3 回答
626 浏览

mongodb - Mongodb .net 客户端选项,你更喜欢哪一个?为什么?

.net 有三个 mongodb 客户端,它们似乎都有相同数量的追随者。

由于我是 mongodb 的新手,因此现在无法通过仅查看功能来区分两者。

如果您正在使用该客户提供商中的任何一个,您可以分享您的看法吗?

0 投票
2 回答
7306 浏览

c# - 如何在使用 mongo csharp 插入后获取最近插入的文档的 _id?

我能够使用以下代码成功插入新文档,但无法获取新插入文档的 _id。

插入后,用户为空。谢谢!

0 投票
4 回答
2967 浏览

c# - MongoDb and self referencing objects

I am just starting to learn about mongo db and was wondering if I am doing something wrong....I have two objects:

When I try to save this particular object graph I receive a stack overflow error because of the circular reference. My question is, is there a way around this? In WCF I am able to add the "IsReference" attribute on the datacontract to true and it serializes just fine.

0 投票
1 回答
2058 浏览

mongodb - 如何在 SQL Server 中实现 mongoDB 版本的标识字段?

我总是使用一个 int 列,该列设置为标识字段作为 MS SQL 表中的主键。在 MongoDB 上执行此操作的最佳方法是什么?我知道我可以使用 oid,但我想使用一个易于阅读和记住的数字。

谢谢你。

0 投票
4 回答
5480 浏览

mongodb - MongoDB 删除 mapreduce 集合

由于客户端代码中的错误,mongodb 创建了许多“mr.mapreduce ....”集合,如何将它们全部删除(可能通过掩码)。