共用方式為


System.Data.Entity.Infrastructure 命名空間

類別

CommitFailedException

認可 錯誤 DbTransaction 時擲回。

CommitFailureHandler

交易處理程式,允許在交易認可期間正常復原連線失敗,方法是將交易追蹤資訊儲存在資料庫中。 它必須使用 來 SetDefaultTransactionHandler(Func<TransactionHandler>) 註冊。

DbChangeTracker

由 的 ChangeTracker 方法 DbContext 傳回,以提供與實體變更追蹤相關的內容功能的存取權。

DbCollectionEntry

類別的非泛型版本 DbCollectionEntry<TEntity,TElement>

DbCollectionEntry<TEntity,TElement>

這個類別的實例會從 的 DbEntityEntry<TEntity> Collection 方法傳回,並允許載入等作業在實體的集合導覽屬性上執行。

DbCompiledModel

實體資料模型的不可變表示 (EDM) 模型,可用來建立 ObjectContext 或 傳遞至 的 DbContext 建構函式。 為了提高效能,這個型別的執行個體應該要快取,並重複加以使用來建構內容。

DbComplexPropertyEntry

類別的非泛型版本 DbComplexPropertyEntry<TEntity,TComplexProperty>

DbComplexPropertyEntry<TEntity,TComplexProperty>

這個類別的實例會從 的 DbEntityEntry<TEntity> ComplexProperty 方法傳回,並允許存取複雜屬性的狀態。

DbConnectionInfo

表示資料庫連接的相關資訊。

DbContextConfiguration

由 的 DbContext Configuration 方法傳回,以提供內容的組態選項存取權。

DbContextInfo

提供指定 DbContext 型別的執行時間資訊。

DbEntityEntry

類別的非泛型版本 DbEntityEntry<TEntity>

DbEntityEntry<TEntity>

這個類別的實例可讓您存取 所追蹤 DbContext 之實體的相關資訊和控制。 請使用內容的 Entity 或 Entities 方法來取得這個型別的物件。

DbExecutionStrategy

針對不可靠的作業和暫時性狀況,提供重試機制的基底實作,這些條件會使用重試之間以指數方式增加的延遲。

DbMemberEntry

這是抽象基底類別,用來表示純量或複雜屬性或是實體的導覽屬性。 純量和複雜屬性使用衍生類別 DbPropertyEntry 、參考導覽屬性使用衍生類別 DbReferenceEntry ,而集合導覽屬性則使用衍生類別 DbCollectionEntry

DbMemberEntry<TEntity,TProperty>

這是抽象基底類別,用來表示純量或複雜屬性或是實體的導覽屬性。 純量和複雜屬性使用衍生類別 DbPropertyEntry<TEntity,TProperty> 、參考導覽屬性使用衍生類別 DbReferenceEntry<TEntity,TProperty> ,而集合導覽屬性則使用衍生類別 DbCollectionEntry<TEntity,TElement>

DbModel

表示 由 所建立 DbModelBuilder 的實體資料模型 (EDM) 。 Compile 方法可用來從這個 EDM 標記法移至 , DbCompiledModel 這是適合快取和建立 或 ObjectContext 實例之 DbContext 模型的已編譯快照集。

DbModelStore

保存模型快取的基類。

DbPropertyEntry

類別的非泛型版本 DbPropertyEntry<TEntity,TProperty>

DbPropertyEntry<TEntity,TProperty>

這個類別的實例會從 的 DbEntityEntry<TEntity> Property 方法傳回,並允許存取純量或複雜屬性的狀態。

DbPropertyValues

基礎實體或複雜物件的所有屬性集合。

DbProviderInfo

將一組字串群組在一起識別提供者和伺服器版本,並組成單一物件。

DbQuery

表示對 DbCoNtext 進行非泛型LINQ to Entities查詢。

DbQuery<TResult>

表示針對 DbCoNtext 的LINQ to Entities查詢。

DbRawSqlQuery

表示從 DbContext 建立之非實體的 SQL 查詢,並使用來自該內容的連接來執行。 這個類別的實例是從 實例取得 Database 。 建立這個物件時不會執行此查詢,每當列舉此查詢時便會執行,例如,藉由使用 foreach。 實體的 SQL 查詢是使用 SqlQuery(String, Object[]) 建立的。 如需此類別的泛型版本,請參閱 DbRawSqlQuery<TElement>

DbRawSqlQuery<TElement>

表示從 DbContext 建立之非實體的 SQL 查詢,並使用來自該內容的連接來執行。 這個類別的實例是從 實例取得 Database 。 建立此物件時,不會執行查詢;它會在每次列舉時執行,例如使用 foreach 。 實體的 SQL 查詢是使用 SqlQuery(String, Object[]) 建立的。 如需此類別的非泛型版本,請參閱 DbRawSqlQuery

DbReferenceEntry

類別的非泛型版本 DbReferenceEntry<TEntity,TProperty>

DbReferenceEntry<TEntity,TProperty>

這個類別的實例會從 的 Reference 方法 DbEntityEntry<TEntity> 傳回,並允許載入等作業在實體的參考導覽屬性上執行。

DbSqlQuery

表示從 DbContext 建立之實體的 SQL 查詢,並使用來自該內容的連接來執行。 這個類別的實例是從實體類型的 實例取得 DbSet 。 建立這個物件時不會執行此查詢,每當列舉此查詢時便會執行,例如,藉由使用 foreach。 使用 建立 SqlQuery(Type, String, Object[]) 非實體的 SQL 查詢。 如需此類別的泛型版本,請參閱 DbSqlQuery<TEntity>

DbSqlQuery<TEntity>

表示從 DbContext 建立之實體的 SQL 查詢,並使用來自該內容的連接來執行。 這個類別的實例是從實體類型的 實例取得 DbSet<TEntity> 。 建立這個物件時不會執行此查詢,每當列舉此查詢時便會執行,例如,藉由使用 foreach。 使用 建立 SqlQuery<TElement>(String, Object[]) 非實體的 SQL 查詢。 如需此類別的非泛型版本,請參閱 DbSqlQuery

DbUpdateConcurrencyException

預期實體的 SaveChanges 會導致資料庫更新,但實際上不會影響資料庫中的資料列時所擲回 DbContext 的例外狀況。 這通常表示資料庫已同時更新,因此預期相符的並行權杖實際上不相符。 請注意,此例外狀況所參考的狀態專案不會序列化,因為序列化之後的狀態專案安全性和存取權會傳回 null。

DbUpdateException

儲存資料庫變更失敗時所 DbContext 擲回的例外狀況。 請注意,此例外狀況所參考的狀態專案不會序列化,因為序列化之後的狀態專案安全性和存取權會傳回 null。

DefaultDbModelStore

將模型從 /儲存到指定位置的 .edmx 檔案中。

DefaultExecutionStrategy

IDbExecutionStrategy 如果作業失敗,則不會重試作業。

DefaultManifestTokenResolver

的預設實作 IManifestTokenResolver ,會使用基礎提供者來取得資訊清單權杖。 請注意,為了避免多個查詢,此實作會根據實例的實際類型 DbConnectionDataSource 屬性和 Database 屬性來使用快取。

EdmMetadata

表示用來儲存有關資料庫內 EDM 之中繼資料的實體。

EdmxReader

從 .edmx 讀取元資料模型的公用程式類別。

EdmxWriter

包含用來存取 EDMX 表單中 Code First 所建立之實體資料模型的方法。 當需要查看 Code First 在內部建立的模型時,這些方法通常會用來偵錯。

ExecutionStrategyKey

用來解析 的 Func<TResult> 索引鍵。 它包含 ADO.NET 提供者不因名稱而異的名稱,以及連接字串中指定的資料庫伺服器名稱。

IncludeMetadataConvention

DbModelBuilder 慣例會使 DbModelBuilder 在建置模型時包含模型的相關中繼資料。 依慣例建立模型時 DbContext ,會將此慣例新增至 DbModelBuilder 所使用的模型清單。 如果 DbCoNtext 用來建立資料庫,這會導致模型中繼資料寫入資料庫。 然後,這可以做為快速檢查,以查看模型自上次針對資料庫使用之後是否已變更。 在衍生 DbCoNtext 類別上覆寫 OnModelCreating 方法,即可從 DbModelBuilder 慣例中移除此慣例。

LocalDbConnectionFactory

這個類別的實例可用來根據指定的資料庫名稱或連接字串,為 SQL Server LocalDb 建立 DbConnection 物件。

ModelContainerConvention

DbModelBuilder 慣例會使用衍生 DbContext 類別的名稱作為 Code First 所建置之概念模型的容器。

ModelNamespaceConvention

這個 DbModelBuilder 慣例會使用衍生 DbContext 類別的命名空間,作為 Code First 所建置的概念模型命名空間。

ObjectReferenceEqualityComparer

使用參考相等比較物件。

ReplacementDbQueryWrapper<TElement>

這個類別的實例會在內部用來建立常數運算式,這些運算式 ObjectQuery<T> 會插入運算式樹狀結構,以取代 和 DbQueryDbQuery<TResult> 參考。

RetryLimitExceededException

重試設定的次數之後,動作再次失敗時所擲回的例外狀況。

SqlCeConnectionFactory

這個類別的執行個體是用來根據給定的資料庫名稱或連接字串,針對 SQL Server Compact Edition 建立 DbConnection 物件。

SqlConnectionFactory

這個類別的執行個體是用來根據給定的資料庫名稱或連接字串,針對 SQL Server 建立 DbConnection 物件。 預設會建立與 '.\SQLEXPRESS' 的連接。 如果要變更這個值,可以在建構 Factory 執行個體時變更基本連接字串。

SuppressDbSetInitializationAttribute

這個屬性可以套用至整個衍生 DbContext 類別或該類別上的個別 DbSet<TEntity>IDbSet<TEntity> 屬性。 套用時,任何探索到 DbSet<TEntity> 的屬性 IDbSet<TEntity> 仍會包含在模型中,但不會自動初始化。

TableExistenceChecker

由 Entity Framework 提供者實作,並用來檢查指定的資料庫中是否有資料表存在。 當判斷是否要將現有資料庫視為空白,以便建立資料表時,資料庫初始化運算式會使用此初始化運算式。

TransactionContext

這個類別是 CommitFailureHandler 用來從資料庫寫入和讀取交易追蹤資訊。 若要自訂交易資料表的定義,您可以衍生自這個類別並覆寫 OnModelCreating(DbModelBuilder) 。 您可以使用 註冊 DbConfiguration 衍生類別。

TransactionHandler

處理交易作業之攔截器的基類。 您可以使用 或 SetTransactionHandler(String, Func<TransactionHandler>, String) 註冊 SetDefaultTransactionHandler(Func<TransactionHandler>) 衍生類別。

TransactionRow

Rrepresents a transaction

UnintentionalCodeFirstException

當內容從 Database First 或 Model First 模式的 DbContext 範本產生,然後用於 Code First 模式時擲回。

介面

IDbAsyncEnumerable

允許以非同步方式擷取專案的介面非同步版本 IEnumerable 。 此介面是用來與 Entity Framework 查詢互動,不應由自訂類別實作。

IDbAsyncEnumerable<T>

介面的 IEnumerable<T> 非同步版本,可讓可列舉序列的專案以非同步方式擷取。 此介面是用來與 Entity Framework 查詢互動,不應由自訂類別實作。

IDbAsyncEnumerator

允許以非同步方式擷取專案的介面非同步版本 IEnumerator 。 此介面是用來與 Entity Framework 查詢互動,不應由自訂類別實作。

IDbAsyncEnumerator<T>

允許以非同步方式擷取專案的介面非同步版本 IEnumerator<T> 。 此介面是用來與 Entity Framework 查詢互動,不應由自訂類別實作。

IDbAsyncQueryProvider

定義方法來建立及非同步執行 物件所描述的 IQueryable 查詢。 此介面是用來與 Entity Framework 查詢互動,不應由自訂類別實作。

IDbConnectionFactory

這個介面的實作是用來根據給定的資料庫名稱,針對某一種類型的資料庫伺服器建立 DbConnection 物件。 系統會在 類別上 Database 設定實例,讓所有未建立連接資訊的 DbCoNtexts,或只是資料庫名稱或連接字串,預設會使用特定類型的資料庫伺服器。 提供此介面的兩個實作: SqlConnectionFactory 可用來建立與 Microsoft SQL Server的連線,包括 EXPRESS 版本。 SqlCeConnectionFactory用來建立與 Microsoft SQL Server Compact Edition 的連線。 其他資料庫伺服器所適用的其他實作可視需要加入。 請注意,實作應該是安全線程或不可變,因為它們可能同時由多個執行緒存取。

IDbContextFactory<TContext>

用於建立衍生 DbContext 實例的處理站。 實作此介面,為沒有公用預設建構函式的內容類型啟用設計階段服務。 在設計階段,可以建立衍生 DbContext 實例,以啟用特定的設計階段體驗,例如模型轉譯、DDL 產生等。若要為沒有公用、預設建構函式的衍生 DbContext 型別啟用設計階段具現化,請實作這個介面。 設計階段服務會自動探索這個介面的實作,這些實作與衍生 DbContext 類型位於相同的元件中。

IDbExecutionStrategy

用來對資料庫執行命令或查詢的策略,可能是發生失敗時要重試的邏輯。

IDbModelCacheKey

表示可唯一識別已載入記憶體之 Entity Framework 模型的索引鍵值。

IDbModelCacheKeyProvider

在您的內容上實作此介面,以使用自訂邏輯來計算用來查閱快取中已建立模型的索引鍵。 此介面可讓您擁有單一內容類型,可與相同 AppDomain 中的不同模型搭配使用,或使用相同模型的多個內容類型。

IDbProviderFactoryResolver

從指定 DbConnection 取得正確之 DbProviderFactory 的服務。

IManifestTokenResolver

服務,用於取得提供連線的提供者資訊清單權杖。 依預設會使用 類別 DefaultManifestTokenResolver ,並使用基礎提供者來取得通常牽涉到開啟連線的權杖。 若要改用不同的實作,您可以藉由將 加入 IDbDependencyResolverDbConfiguration ,以使用連接中的任何資訊來傳回權杖。 例如,如果已知連線指向 SQL Server 2008 資料庫,則可以傳回 「2008」 而不需開啟連線。

IMetadataAnnotationSerializer

實作這個介面,以允許實例所 MetadataProperty 代表的自訂批註序列化至 EDMX XML,以及從 EDMX XML 序列化。 通常會使用 SetMetadataAnnotationSerializer(String, Func<IMetadataAnnotationSerializer>) 方法來設定序列化程式實例。

IObjectContextAdapter

可提供 實例的物件所實作的 ObjectContext 介面。 類別會 DbContext 實作這個介面,以提供基礎 ObjectCoNtext 的存取權。

IProviderInvariantName

IDbDependencyResolver 解析提供者不可變名稱 DbProviderFactory 時使用 和 DbConfiguration

列舉

DbConnectionStringOrigin

描述與 DbContext 相關聯的資料庫連接字串來源。