埋め込みドキュメントの配列を含むmongoドキュメントがあります。埋め込みドキュメントには、 "Id"という名前のプロパティがあります。mongo C#ドライバを含む埋め込みドキュメントのIdプロパティ名を維持
私のC#のマッピングオブジェクトは、(明らかに簡素化、)このようになり{ Name: "Outer object", Embedded: [ {Name: "Embedded A", Id: "5f1c591a71dc237199eeaeda"} ] }
public class Outer
{
public string Name { get; set; }
public IEnumerable<Inner> Inners { get; set; }
}
public class Inner
{
public string Name { get; set; }
public string Id { get; set; }
}
私は、データベースへの外側を書き込むと、C#のドライバはにInner.Idプロパティの名前を変更します_id。この自動リネームを回避するにはどうすればよいですか? Idプロパティで[BsonElement( "Id")]属性を使用しようとしましたが、それは役に立ちませんでした。
これは私の推測ですが、私は自分でMongoDBを使ったことはありません。 –
プロパティの名前をIdStrに変更し、プロパティに[BsonElement( "Id")]属性を追加しました。それはうまくいった。ありがとう! –
この回答ありがとうございます。私たちが今日追いかけている問題について説明します。地図をどのようにオーバーライドしても問題ありません。彼らはどんな動きをしていますか? :/ –