语言

NavigationBuilder<TSource,TTarget> 类

定义

提供一个简单的 API 来配置 IMutableNavigation 或配置 IMutableSkipNavigation。

[System.Runtime.CompilerServices.Nullable(0)]
public class NavigationBuilder<TSource,TTarget> : Microsoft.EntityFrameworkCore.Metadata.Builders.NavigationBuilder where TSource : class where TTarget : class
public class NavigationBuilder<TSource,TTarget> : Microsoft.EntityFrameworkCore.Metadata.Builders.NavigationBuilder where TSource : class where TTarget : class
[<System.Runtime.CompilerServices.Nullable(0)>]
type NavigationBuilder<'Source, 'arget (requires 'Source : null and 'arget : null)> = class
    inherit NavigationBuilder
type NavigationBuilder<'Source, 'arget (requires 'Source : null and 'arget : null)> = class
    inherit NavigationBuilder
Public Class NavigationBuilder(Of TSource, TTarget)
Inherits NavigationBuilder

类型参数

TSource
TTarget
继承
NavigationBuilder<TSource,TTarget>
特性

注解

使用 ModelBuilder API 时,此类的实例会从方法返回,并且不会在应用程序代码中直接构造此类实例。

有关详细信息和示例,请参阅 建模实体类型和关系 。

构造函数

名称 说明
NavigationBuilder<TSource,TTarget>(IMutableNavigationBase)

这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。

属性

名称 说明
Metadata

正在配置的导航。

(继承自 NavigationBuilder)

方法

名称 说明
AutoInclude(Boolean)

配置是否应在查询中自动包含此导航。

EnableLazyLoading(Boolean)

配置是否应为此导航启用延迟加载。 请注意,仅当配置了延迟加载代理或注入等延迟加载机制时 ILazyLoader ,才能加载属性。

HasAnnotation(String, Object)

在导航属性上添加或更新批注。 如果具有指定键的 annotation 批注已存在,则会更新其值。

HasField(String)

设置用于此导航属性的后盾字段。

IsRequired(Boolean)

配置是否需要此导航。

UsePropertyAccessMode(PropertyAccessMode)

PropertyAccessMode设置要用于此属性的项。

显式接口实现

名称 说明
IInfrastructure<IConventionNavigationBuilder>.Instance

用于配置导航的内部生成器。

(继承自 NavigationBuilder)
IInfrastructure<IConventionSkipNavigationBuilder>.Instance

用于配置跳过导航的内部生成器。

(继承自 NavigationBuilder)

扩展方法

名称 说明
GetInfrastructure<T>(IInfrastructure<T>)

从正在使用的隐藏 IInfrastructure<T>属性中获取值。

此方法通常由数据库提供程序(和其他扩展)使用。 它通常不用于应用程序代码。

适用于