PropertyAccessMode 列舉

定義

將這個列舉中的值傳遞至 UsePropertyAccessMode(PropertyAccessMode)UsePropertyAccessMode(PropertyAccessMode)UsePropertyAccessMode(PropertyAccessMode) ,以變更讀取和寫入屬性或欄位時,是否會使用屬性或支援欄位。

public enum PropertyAccessMode
type PropertyAccessMode = 
Public Enum PropertyAccessMode
繼承
PropertyAccessMode

欄位

Field 0

強制所有對 屬性的存取都必須通過 欄位。

FieldDuringConstruction 1

強制在建構新的實例時,所有對 屬性的存取都必須經過 欄位。 從資料庫查詢實體時,通常會建構新的實例。 如果設定此模式,而且無法寫入欄位,將會擲回例外狀況。

PreferField 3

屬性的所有存取都會直接移至欄位,除非不知道欄位,在此情況下,存取會通過 屬性。

PreferFieldDuringConstruction 4

建構新實體實例時,所有對屬性的存取都會直接移至 欄位,除非不知道欄位,在此情況下存取會通過 屬性。 屬性的所有其他用法都會經歷屬性 getters 和 setter,除非無法這樣做,例如,屬性是唯讀的,在此情況下,這些存取也會使用 欄位。

PreferProperty 5

屬性的所有存取都會經過 屬性,除非沒有 屬性,或遺漏 setter/getter,在此情況下,存取權會直接移至 欄位。

Property 2

強制所有對屬性的存取都必須經過屬性 getter 和 setter,即使正在建構新的物件亦然。

備註

預設行為是 PreferField。 在 EF Core 3.0 之前,預設行為為 PreferFieldDuringConstruction

如需詳細資訊和範例 ,請參閱 EF Core 中的屬性與欄位存取

適用於