Share via


ComplexPropertyBuilder 類別

定義

提供簡單的 API 來設定 IMutableComplexProperty

public class ComplexPropertyBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Builders.IConventionComplexPropertyBuilder>, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Builders.IConventionComplexTypeBuilder>
type ComplexPropertyBuilder = class
    interface IInfrastructure<IConventionComplexPropertyBuilder>
    interface IInfrastructure<IConventionComplexTypeBuilder>
Public Class ComplexPropertyBuilder
Implements IInfrastructure(Of IConventionComplexPropertyBuilder), IInfrastructure(Of IConventionComplexTypeBuilder)
繼承
ComplexPropertyBuilder
衍生
實作

備註

使用 ModelBuilder API 時,這個類別的實例會從方法傳回,而且不是設計成直接在應用程式程式碼中建構。

建構函式

ComplexPropertyBuilder(IMutableComplexProperty)

這是支援 Entity Framework Core 基礎結構的內部 API,不受與公用 API 相同的相容性標準。 它可能會在任何版本中變更或移除,而不需任何通知。 您應該只在程式碼中直接使用它,並特別小心,並知道這麼做可能會導致應用程式在更新至新的 Entity Framework Core 版本時失敗。

屬性

Metadata

正在設定的複雜屬性。

PropertyBuilder

這是支援 Entity Framework Core 基礎結構的內部 API,不受與公用 API 相同的相容性標準。 它可能會在任何版本中變更或移除,而不需任何通知。 您應該只在程式碼中直接使用它,並特別小心,並知道這麼做可能會導致應用程式在更新至新的 Entity Framework Core 版本時失敗。

TypeBuilder

這是支援 Entity Framework Core 基礎結構的內部 API,不受與公用 API 相同的相容性標準。 它可能會在任何版本中變更或移除,而不需任何通知。 您應該只在程式碼中直接使用它,並特別小心,並知道這麼做可能會導致應用程式在更新至新的 Entity Framework Core 版本時失敗。

方法

ComplexProperty(String)

傳回物件,這個物件可用來設定複雜類型的複雜屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

ComplexProperty(String, Action<ComplexPropertyBuilder>)

設定複雜類型的複雜屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

ComplexProperty(Type, String)

傳回物件,這個物件可用來設定複雜類型的複雜屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

ComplexProperty(Type, String, Action<ComplexPropertyBuilder>)

設定複雜類型的複雜屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

ComplexProperty(Type, String, String)

傳回物件,這個物件可用來設定複雜類型的複雜屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

ComplexProperty(Type, String, String, Action<ComplexPropertyBuilder>)

設定複雜類型的複雜屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

ComplexProperty<TProperty>(String)

傳回物件,這個物件可用來設定複雜類型的複雜屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

ComplexProperty<TProperty>(String, Action<ComplexPropertyBuilder<TProperty>>)

設定複雜類型的複雜屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

ComplexProperty<TProperty>(String, String)

傳回物件,這個物件可用來設定複雜類型的複雜屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

ComplexProperty<TProperty>(String, String, Action<ComplexPropertyBuilder<TProperty>>)

設定複雜類型的複雜屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

HasChangeTrackingStrategy(ChangeTrackingStrategy)

設定 ChangeTrackingStrategy 要用於這個實體類型的 。 此策略指出內容如何偵測實體類型實例的屬性變更。

HasField(String)

設定要用於此屬性的備份欄位。

HasPropertyAnnotation(String, Object)

在複雜屬性上加入或更新注釋。 如果 中 annotation 指定索引鍵的注釋已經存在,其值將會更新。

HasTypeAnnotation(String, Object)

在複雜型別上加入或更新注釋。 如果 中 annotation 指定索引鍵的注釋已經存在,其值將會更新。

Ignore(String)

從複雜型別中排除指定的屬性。 這個方法通常用來從慣例新增的複雜型別中移除屬性和導覽。

IndexerProperty(Type, String)

傳回物件,這個物件可用來設定複雜類型的屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

IndexerProperty<TProperty>(String)

傳回物件,這個物件可用來設定複雜類型的屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

IsRequired(Boolean)

設定這個屬性必須已指派值,或 null 是有效的值。 只有在屬性是以可指派 null 的 CLR 類型為基礎時,才能將屬性設定為非必要。

PrimitiveCollection(String)

傳回物件,這個物件可用來設定複雜類型的屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

PrimitiveCollection(Type, String)

傳回物件,這個物件可用來設定複雜類型的屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

PrimitiveCollection<TProperty>(String)

傳回物件,這個物件可用來設定複雜類型的屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

Property(String)

傳回物件,這個物件可用來設定複雜類型的屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

Property(Type, String)

傳回物件,這個物件可用來設定複雜類型的屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

Property<TProperty>(String)

傳回物件,這個物件可用來設定複雜類型的屬性。 如果沒有具有指定名稱的屬性存在,則會加入新的屬性。

UseDefaultPropertyAccessMode(PropertyAccessMode)

PropertyAccessMode設定要用於這個複雜類型之所有屬性的 。

UsePropertyAccessMode(PropertyAccessMode)

PropertyAccessMode設定要用於這個屬性的 。

明確介面實作

IInfrastructure<IConventionComplexPropertyBuilder>.Instance

取得用來設定複雜屬性的內部產生器。

IInfrastructure<IConventionComplexTypeBuilder>.Instance

取得用來設定複雜型別的內部產生器。

擴充方法

GetInfrastructure<T>(IInfrastructure<T>)

從使用 IInfrastructure<T> 隱藏的屬性取得值。

這個方法通常由資料庫提供者 (和其他延伸模組) 使用。 它通常不會用於應用程式程式碼。

適用於