如何设置EF Core中的数据模型配置?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2760个文字,预计阅读时间需要12分钟。
0. 前言,本文的第一节将概述配置模型的作用(对数据模型的补充描述)。+第二节描述两种配置方式,即数据注释(data annotations)和Fluent API方式。+第三节开始,主要介绍如何将常用的配置‘嵌入’。
0 前言本文的第一节,会概述配置模型的作用(对数据模型的补充描述)。
第二节描述两种配置方式,即:数据注释(data annotations)和 Fluent API 方式。
第三节开始,主要是将常用的配置记录下来,以便翻查。
1 概述
数据实体(Entity)的类名、属性等,称之为约定(conventions),约定主要是为了定义数据模型(Model)的形状。
但是光靠约定可能不足以完整描述数据模型,有时我们的数据模型与我们的数据实体可能也有差异,这时,就可以通过数据注释(data annotations)和 Fluent API 补充,具体请参考EF Core官方文档:创建并配置模型。
2 配置方式 2.1 数据注释(data annotations)
直接在数据实体上打上对应的标签,如下例子中,标识表名为 Blogs,Url 属性不能为 null
[Table("Blogs")]
public class Blog
{
public int BlogId { get; set; }
[Required]
public string Url { get; set; }
}
注意:数据注释的方式的优先级高于约定(conventions)但低于 Fluent API,即数据注释的方式会被 Fluent API 覆盖。
本文共计2760个文字,预计阅读时间需要12分钟。
0. 前言,本文的第一节将概述配置模型的作用(对数据模型的补充描述)。+第二节描述两种配置方式,即数据注释(data annotations)和Fluent API方式。+第三节开始,主要介绍如何将常用的配置‘嵌入’。
0 前言本文的第一节,会概述配置模型的作用(对数据模型的补充描述)。
第二节描述两种配置方式,即:数据注释(data annotations)和 Fluent API 方式。
第三节开始,主要是将常用的配置记录下来,以便翻查。
1 概述
数据实体(Entity)的类名、属性等,称之为约定(conventions),约定主要是为了定义数据模型(Model)的形状。
但是光靠约定可能不足以完整描述数据模型,有时我们的数据模型与我们的数据实体可能也有差异,这时,就可以通过数据注释(data annotations)和 Fluent API 补充,具体请参考EF Core官方文档:创建并配置模型。
2 配置方式 2.1 数据注释(data annotations)
直接在数据实体上打上对应的标签,如下例子中,标识表名为 Blogs,Url 属性不能为 null
[Table("Blogs")]
public class Blog
{
public int BlogId { get; set; }
[Required]
public string Url { get; set; }
}
注意:数据注释的方式的优先级高于约定(conventions)但低于 Fluent API,即数据注释的方式会被 Fluent API 覆盖。

