System.Data.Entity.Infrastructure 命名空間
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
類別
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> |
這個類別的實例會從 的 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 。
建立此物件時,不會執行查詢;它會在每次列舉時執行,例如使用 |
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 ,會使用基礎提供者來取得資訊清單權杖。 請注意,為了避免多個查詢,此實作會根據實例的實際類型 DbConnection 、 DataSource 屬性和 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> 會插入運算式樹狀結構,以取代 和 DbQuery 的 DbQuery<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 ,並使用基礎提供者來取得通常牽涉到開啟連線的權杖。 若要改用不同的實作,您可以藉由將 加入 IDbDependencyResolver 至 DbConfiguration ,以使用連接中的任何資訊來傳回權杖。 例如,如果已知連線指向 SQL Server 2008 資料庫,則可以傳回 「2008」 而不需開啟連線。 |
IMetadataAnnotationSerializer |
實作這個介面,以允許實例所 MetadataProperty 代表的自訂批註序列化至 EDMX XML,以及從 EDMX XML 序列化。 通常會使用 SetMetadataAnnotationSerializer(String, Func<IMetadataAnnotationSerializer>) 方法來設定序列化程式實例。 |
IObjectContextAdapter |
可提供 實例的物件所實作的 ObjectContext 介面。 類別會 DbContext 實作這個介面,以提供基礎 ObjectCoNtext 的存取權。 |
IProviderInvariantName |
從 IDbDependencyResolver 解析提供者不可變名稱 DbProviderFactory 時使用 和 DbConfiguration 。 |
列舉
DbConnectionStringOrigin |
描述與 DbContext 相關聯的資料庫連接字串來源。 |