我是MongoDB的新手,遇到了一些问题。按照这里的简单指南(http://docs.mongodb.org/ecosystem/tutorial/getting-started-with-csharp-driver),我连接到了一个不是我自己创建的数据库。所以当示例包括如下内容时:
var collection = database.GetCollection<Entity>("entities");
它不适用于我连接到的实际数据库,因为我没有该类。它充满了我无法猜测的类型..例如:
/* 0 */
{
"_id" : ObjectId("54f0f990cea606d49fafd5h2"),
"Time" : ISODate("2015-02-27T23:11:12.301Z"),
"Timecode" : "15:11:12:18",
"Round" : "1",
"FighterID" : 5,
"FighterName" : "John Doe",
"TypeID" : 1,
"Type" : "jab",
"HandID" : 2,
"Hand" : "left",
"Force" : 0.0,
"Velocity" : 8.0789527768068456,
"Confidence" : 67.689217510307827,
"ImpactType" : 1,
"FightID" : "fea5dc60-b898-11e4-ac68-a5f571ea05d9"
}
我不知道如何创建一个类,因为类成员相当复杂。
我该怎么做呢?
4条答案
按热度按时间7kjnsjlb1#
我不知道有什么方法可以像EF和linq-to-sql那样从mongodb中创建类。
我建议你做两件事中的一件,我相信第二个解决方案会更难,但更接近你的要求。
1.尝试使用bsonextractelements属性捕获所有复杂字段
或:
1.使用反射并将属性的名称以及每个属性的数据类型存储到txt文件中。2然后手动创建你的类。
23c0lvtd2#
这个问题的答案很晚了,但我一直在使用this website为我生成C#类。它的工作原理是解析提供给它的JSON数据,并生成可用于反序列化所述JSON的相关类。
当涉及到处理从MongoDB中获取的json时,它有几个问题:
就像我说的--很晚才回答,但这个问题在谷歌上出现了很多次,所以我想我会加上这个,希望它能帮助其他人以后
wgx48brx3#
回答晚了,但可能会帮助别人。跳过了一些属性。
kuarbcqp4#
甚至后来的党,但(受启发的Sk93的答案),我已经找到了this website(http://bson2csharp.com/),了解MongoDB BSON。
您访问的页面不存在