我正在尝试对MongoDB和C#中的文档进行 CRUD 操作。我想在 C# 中使用有意义的长属性名称来固定结构化域实体,但由于每个属性的名称将针对每个文档保存在 MongoDB 中,这不是一个好主意。这是因为属性名称将冗余保存在数据库中并影响总存储和性能。
我能想到的解决这个问题的解决方案是在 C# 中为属性使用与在 MongoDB 中不同的名称,这意味着需要它们之间的映射。一种优雅的方法是合并 C# 的属性,如下所示:
class Book
{
[BsonProperty("n")]
public string Name { get; set; }
[BsonProperty("a")]
public string Author { get; set; }
}
在这种情况下,文档将像这样保存在数据库中:
{ n: "...", a: "..." }
我不确定这是否支持 MongoDB 的 C# 驱动程序!?我自己找不到它,但我希望我找错地方了!