You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在MongoDB中使用C#为文档的Wohnort字段添加子文档?

嗨,我来帮你搞定这个问题!要给wohnort字段添加子文档很简单,你只需要把原来的字符串值替换成一个新的BsonDocument实例就行——这个新的BsonDocument就是它的子文档,里面可以包含你需要的任意子字段。

修改后的完整代码示例

var document = new BsonDocument
{
    { "name", "test1" },
    { "nachname", "test5" },
    { "age", "test2" },
    { "wohnort", new BsonDocument 
        {
            { "strasse", "Musterstrasse 12" },
            { "stadt", "Berlin" },
            { "plz", "10178" }
        }
    },
    { "test", "test4" }
};

await collection.InsertOneAsync(document);
Console.Read();

关键说明

  • 这里我把wohnort的原字符串值"test3"换成了一个嵌套的BsonDocument,里面添加了地址相关的子字段(街道、城市、邮编),你可以完全根据自己的需求调整子字段的名称和内容。
  • 如果需要更深度的嵌套(比如子文档里再包含子文档),用同样的方式继续嵌套BsonDocument即可,示例如下:
    { "wohnort", new BsonDocument 
        {
            { "strasse", "Musterstrasse 12" },
            { "stadt", new BsonDocument 
                {
                    { "name", "Berlin" },
                    { "bundesland", "Berlin" }
                }
            },
            { "plz", "10178" }
        }
    }
    

插入完成后,MongoDB中的文档结构会变成这样(简化展示):

{
  "_id": ObjectId("..."),
  "name": "test1",
  "nachname": "test5",
  "age": "test2",
  "wohnort": {
    "strasse": "Musterstrasse 12",
    "stadt": "Berlin",
    "plz": "10178"
  },
  "test": "test4"
}

内容的提问来源于stack exchange,提问作者Marcolia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:10:57