DbModelBuilder 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
DbModelBuilder 用于将 CLR 类映射到数据库架构。 这种以代码为中心的方法 (EDM) 模型生成实体数据模型称为“代码优先”。
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId="Db")]
public class DbModelBuilder
public class DbModelBuilder
type DbModelBuilder = class
Public Class DbModelBuilder
- 继承
-
DbModelBuilder
- 属性
注解
DbModelBuilder 通常用于通过替代 DbContext.OnModelCreating (DbModelBuilder) 来配置模型。 还可以独立于 DbContext 使用 DbModelBuilder 来生成模型,然后构造 DbContext 或 ObjectContext。 但是,建议的方法是在 中使用 DbContext OnModelCreating,因为工作流更直观,并处理常见任务,例如缓存创建的模型。 形成模型的类型注册到 DbModelBuilder 中,可以通过将数据注释应用于类和/或使用 Fluent 样式 DbModelBuilder API 来执行可选配置。 调用 Build 方法时,将运行一组约定以发现初始模型。 这些约定将自动发现模型的各个方面(例如主键),并且还将处理您的类上所指定的任何数据注释。 最后,将应用使用 DbModelBuilder API 执行的任何配置。 通过 DbModelBuilder API 完成的配置优先于数据注释,后者又优先于默认约定。
构造函数
DbModelBuilder() |
初始化 DbModelBuilder 类的新实例。 发现初始模型的过程将使用计算机上安装的最新版本的实体框架中包含的一组约定。 |
DbModelBuilder(DbModelBuilderVersion) |
初始化 类的新实例, DbModelBuilder 该实例将使用一组特定的约定来发现初始模型。 |
属性
Configurations |
ConfigurationRegistrar获取此 DbModelBuilder 的 。 注册器允许使用此生成器来注册派生的实体和复杂类型配置。 |
Conventions |
提供对处理约定的此 DbModelBuilder 设置的访问。 |
方法
Build(DbConnection) |
DbModel基于使用此生成器执行的配置创建 。 连接可用于确定要使用的数据库提供程序,因为这会影响生成的模型的数据库层。 |
Build(DbProviderInfo) |
DbModel基于使用此生成器执行的配置创建 。 必须指定提供程序信息,因为这会影响生成的模型的数据库层。 对于 SqlClient,固定名称为“System.Data.SqlClient”,清单令牌是版本年份 (,即“2005”、“2008”等 ) |
ComplexType<TComplexType>() |
将某个类型注册为模型中的复杂类型,并返回可用于配置该复杂类型的对象。 可以针对同一个类型多次调用此方法,以执行多行配置。 |
Entity<TEntityType>() |
将某个实体类型注册为模型的一部分,并返回可用于配置实体的对象。 可以针对同一个实体多次调用此方法,以执行多行配置。 |
Equals(Object) |
DbModelBuilder 用于将 CLR 类映射到数据库架构。 这种以代码为中心的方法 (EDM) 模型生成实体数据模型称为“代码优先”。 |
GetHashCode() |
DbModelBuilder 用于将 CLR 类映射到数据库架构。 这种以代码为中心的方法 (EDM) 模型生成实体数据模型称为“代码优先”。 |
GetType() |
获取当前实例的 Type。 |
HasDefaultSchema(String) |
配置默认数据库架构名称。 此默认数据库架构名称用于没有显式配置的架构名称的数据库对象。 |
Ignore(IEnumerable<Type>) |
从模型中排除指定的类型 () 。 这用于从模型中删除在初始模型发现期间按约定添加的类型。 |
Ignore<T>() |
从模型中排除类型。 这用于从模型中删除在初始模型发现期间按约定添加的类型。 |
Properties() |
开始配置适用于模型中的所有属性的轻型约定。 |
Properties<T>() |
开始配置适用于模型中指定类型的所有基元属性的轻型约定。 |
RegisterEntityType(Type) |
将实体类型注册为模型的一部分。 |
ToString() |
DbModelBuilder 用于将 CLR 类映射到数据库架构。 这种以代码为中心的方法 (EDM) 模型生成实体数据模型称为“代码优先”。 |
Types() |
开始配置适用于模型中的所有实体和复杂类型的轻量级约定。 |
Types<T>() |
开始配置轻量级约定,该约定适用于模型中的所有实体和复杂类型,这些实体和复杂类型继承自泛型参数或实现泛型参数指定的类型。 此方法不会将类型注册为模型的一部分。 |