0

我们有一个包含数百个类/枚举的大型应用程序,我们希望使用 MongoDB 来存储其中的一些。

情况是当前有一个系统,我们将 .NET 对象二进制序列化为 SQL 数据库中的字段,然后按需反序列化。我们想要的是以一种允许我们直接查询对象属性的方式将对象放入 Mongo(即,无需将对象加载到内存、反序列化等)。这样我们就可以开始从历史数据中获取一些分析,而无需大幅更改代码库。

我的问题是,这很容易吗?C# 驱动程序中是否有内置的序列化程序来执行此操作?

如果我试图做的事情本质上是错误的,我也愿意接受提出更好方法的答案。

更新:需要明确的是,我要做的是获取一个使用 NHibernate 加载的对象,并将其作为 Queryable 对象插入到 Mongo 中。最终,我也想在某个时候将它加载回内存中。

4

2 回答 2

0

MongoDB 基本上是 JSON 文档的存储,所以如果你可以以 JSON 方式序列化你的对象,你应该可以将它存储在 MongoDB 中,我假设有很多用于 .NET 的 JSON 序列化器,所以应该很容易找到一。

一旦所有内容都以 JSON 格式存储在 MongoDB 中,您就可以在没有任何其他工具直接查询数据库的情况下对其进行查询。

问候,

于 2013-03-05T12:45:20.370 回答
0

您可以使用Simple.Data.MongoDB一个用于 MongoDB 的轻量级动态数据访问 .NET 组件

于 2013-04-02T05:23:37.730 回答