Mego开发文档 - 数据库建模
数据库建模
我们还提供了一些其他的特性,用于定制化数据库对应的数据结构。
表映射
框架默认会使用CLR类型名称做为实际数据库的表名,当两者不一致时可以使用该特性强制表名称。
[Table("blogs")]
public class Blog
{
public int BlogId { get; set; }
public string Url { get; set; }
}
列映射
框架默认会使用CLR属性名称做为实际数据库的列名,当两者不一致时可以使用该特性强制列名。
public class Blog
{
[Column("blog_id")]
public int BlogId { get; set; }
public string Url { get; set; }
}
数据类型
数据类型是指属性映射到的列的数据库特定类型。
public class Blog
{
public int BlogId { get; set; }
[Column(nameof(Url), "varchar(200)")]
public string Url { get; set; }
[Column(nameof(Rating), "decimal(5, 2)")]
public decimal Rating { get; set; }
}
计算列
计算列是其值在数据库中计算的列。计算列可以使用表中的其他列来计算其值,部分数据库还支持计算列持久化,同样也可以声明。对于计算列的属性在提交时是不会发送到数据库的。
public class Person
{
public int PersonId { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
[Computed("[LastName] + ', ' + [FirstName]")]
public string DisplayName { get; set; }
}
声明:一个新的技术或框架出现后还是需要时间的沉淀,我个人觉的至少需要半年以上的时间,所以请暂时不要将该框架应用到你觉的重要的系统中。不过也请大家可以多多试用,帮助Mego可以快速成长,感谢各位的问题及意见反馈。