Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将简单类解析为Bson和MongoDB集合_C#_Mongodb_Bson - Fatal编程技术网

C# 如何将简单类解析为Bson和MongoDB集合

C# 如何将简单类解析为Bson和MongoDB集合,c#,mongodb,bson,C#,Mongodb,Bson,我是C#中MongoDB的新手 我创建了一个非常简单的类,我想将它自动插入到集合中 如果我不想手动映射所有内容,我该怎么做 public class DummyClass { [BsonId] public int Id { set; get; } [BsonElement("first")] public string First { set { _name = value; } } [BsonConstructor] pub

我是C#中MongoDB的新手

我创建了一个非常简单的类,我想将它自动插入到集合中

如果我不想手动映射所有内容,我该怎么做

public class DummyClass
{
    [BsonId]        
    public int Id { set; get; }

    [BsonElement("first")]
    public string First { set { _name = value; } }

    [BsonConstructor]
    public DummyClass()
    {
        Id = 2;
        First = "1";
    }
}
我曾希望我能做这样的事情:

_dbClient = new MongoClient();
_database = _dbClient.GetDatabase("testDB");
_collection = _database.GetCollection<BsonDocument>("Collection");

var doc = BsonDocument.Create(dummy);
_collection.InsertOneAsync(doc);
有什么建议吗

我真的不想做:

{
    {"Id", "2"},
    {"First", "1"},
}
编辑: 我忘了这句话:

BsonClassMap.RegisterClassMap<DummyClass>();
BsonClassMap.RegisterClassMap();

当集合中的字段与模型类中的属性不匹配时,使用
BsonDocument
是有意义的。否则,应该创建映射到类的集合

_collection = _database.GetCollection<DummyClass>("Collection");
await _collection.InsertOneAsync(doc);
\u collection=\u database.GetCollection(“collection”);
等待收集。插入同步(doc);

不要忘记MongoDB.Driver中的异步/等待方法

当集合中的字段与模型类中的属性不匹配时,使用
BsonDocument
是有意义的。否则,应该创建映射到类的集合

_collection = _database.GetCollection<DummyClass>("Collection");
await _collection.InsertOneAsync(doc);
\u collection=\u database.GetCollection(“collection”);
等待收集。插入同步(doc);
不要忘记MongoDB.Driver中的异步/等待方法

您可以使用ToBsonDocument()

您可以使用ToBsonDocument()

_collection.InsertOneAsync(doc.ToBsonDocument())