我使用的是Mongodb官方驱动程序,我希望默认情况下将元素命名为小写,以避免代码如下:
public class Localization
{
[BsonId(IdGenerator = typeof(ObjectIdGenerator))]
public int Id { get; set; }
[BsonRequired]
[BsonElement("country")]
public string Country { get; set; }
在此示例中,我希望默认情况下元素名称为“country”而不是“Country”又称小写。有可能吗?
由于
答案 0 :(得分:10)
自BsonClassMap.RegisterConventions以来的一个小更新被标记为过时
var camelCaseConventionPack = new ConventionPack { new CamelCaseElementNameConvention() };
ConventionRegistry.Register("CamelCase", camelCaseConventionPack, type => true);
答案 1 :(得分:3)
var conventions = new ConventionProfile();
conventions.SetElementNameConvention(new CamelCaseElementNameConvention());
BsonClassMap.RegisterConventions(conventions, t => true);
答案 2 :(得分:1)
是。您可以创建ConventionProfile并覆盖ElementName约定。请参阅此处的文档,了解如何执行此操作:http://www.mongodb.org/display/DOCS/CSharp+Driver+Serialization+Tutorial#CSharpDriverSerializationTutorial-Conventions