MongoDBおよびC#のドキュメントに対して CRUD 操作を実行しようとしています。意味のある長いプロパティ名を持つ C# の構造化ドメイン エンティティを修正したいと考えていますが、各ドキュメントの各プロパティの名前が MongoDB に保存されるため、それはお勧めできません。これは、プロパティ名がデータベースに重複して保存され、全体のストレージとパフォーマンスに影響を与えるためです。
この問題を克服するために私が考えることができる解決策は、MongoDB とは異なるプロパティ名を C# で使用することです。これは、それらの間のマッピングが必要であることを意味します。これを行うエレガントな方法の 1 つは、次のように C# の属性を組み込むことです。
class Book
{
[BsonProperty("n")]
public string Name { get; set; }
[BsonProperty("a")]
public string Author { get; set; }
}
この場合、ドキュメントは次のようにデータベースに保存されます。
{ n: "...", a: "..." }
これが MongoDB の C# ドライバーでサポートされているかどうかはわかりません!? 自分で見つけることはできませんが、間違った場所を探していることを望んでいました!