EntityCollection<TEntity> 類別
[此頁面專屬於 Entity Framework 第 6 版。最新版本可從 'Entity Framework' NuGet 套件取得。如需 Entity Framework 的詳細資訊,請參閱 msdn.com/data/ef。]
建立特殊 EDM 建構模型的實體集合,可以是特殊類型的所有實體,或參與特殊關聯性的實體。
繼承階層
System.Object
System.Data.Entity.Core.Objects.DataClasses.RelatedEnd
System.Data.Entity.Core.Objects.DataClasses.EntityCollection<TEntity>
命名空間: System.Data.Entity.Core.Objects.DataClasses
組件: EntityFramework (在 EntityFramework.dll 中)
語法
'宣告
<SerializableAttribute> _
Public Class EntityCollection(Of TEntity As Class) _
Inherits RelatedEnd _
Implements ICollection(Of TEntity), IEnumerable(Of TEntity), _
IEnumerable, IListSource
'用途
Dim instance As EntityCollection(Of TEntity)
[SerializableAttribute]
public class EntityCollection<TEntity> : RelatedEnd,
ICollection<TEntity>, IEnumerable<TEntity>, IEnumerable, IListSource
where TEntity : class
[SerializableAttribute]
generic<typename TEntity>
where TEntity : ref class
public ref class EntityCollection : public RelatedEnd,
ICollection<TEntity>, IEnumerable<TEntity>, IEnumerable, IListSource
[<SerializableAttribute>]
type EntityCollection<'TEntity when 'TEntity : not struct> =
class
inherit RelatedEnd
interface ICollection<'TEntity>
interface IEnumerable<'TEntity>
interface IEnumerable
interface IListSource
end
JScript does not support generic types and methods.
類型參數
- TEntity
此集合中實體的類型。
EntityCollection<TEntity> 類型會公開下列成員。
建構函式
名稱 | 描述 | |
---|---|---|
EntityCollection<TEntity> | 初始化 EntityCollection<TEntity> 類別的新執行個體。 |
靠上
屬性
名稱 | 描述 | |
---|---|---|
Count | 取得包含在集合中的物件數目。 | |
IsLoaded | 取得值,此值指出所有相關物件是否都已經載入。 (繼承自 RelatedEnd)。 | |
IsReadOnly | 取得值,此值表示 EntityCollection<TEntity> 是否為唯讀。 | |
RelationshipName | 取得此相關端所參與之關聯性的名稱。 (繼承自 RelatedEnd)。 | |
RelationshipSet | 取得相關端中繼資料的參考。 (繼承自 RelatedEnd)。 | |
SourceRoleName | 取得位於關聯性來源端的角色名稱。 (繼承自 RelatedEnd)。 | |
TargetRoleName | 取得位於關聯性目標端的角色名稱。 (繼承自 RelatedEnd)。 |
靠上
方法
名稱 | 描述 | |
---|---|---|
Add | 將物件加入至集合。 | |
Attach(IEnumerable<TEntity>) | 在物件內容中,定義物件與相關物件之集合之間的關聯性。 | |
Attach(TEntity) | 在物件內容中,定義兩個所附加物件之間的關聯性。 | |
Clear | 從集合中移除所有實體。 | |
Contains | 判斷特定物件是否存在集合中。 | |
CopyTo | 將集合的所有內容複製到陣列,從目標陣列的指定索引開始。 | |
CreateSourceQuery | 傳回物件查詢,執行此查詢時,它就會傳回存在目前集合中的相同物件集合。 | |
Equals | (繼承自 Object)。 | |
Finalize | (繼承自 Object)。 | |
GetEnumerator | 傳回可用來逐一查看集合中物件的列舉值。 | |
GetHashCode | (繼承自 Object)。 | |
GetType | (繼承自 Object)。 | |
Load() | 使用預設合併選項,將一個或多個相關物件載入相關端中。 (繼承自 RelatedEnd)。 | |
Load(MergeOption) | 使用指定的合併選項,將相關物件載入集合中。 (覆寫 RelatedEnd.Load(MergeOption)。) | |
LoadAsync(CancellationToken) | 使用預設合併選項,以非同步方式將一個或多個相關物件載入相關端中。 (繼承自 RelatedEnd)。 | |
LoadAsync(MergeOption, CancellationToken) | 使用預設的合併選項,以非同步方式將一個或多個相關實體載入相關端。 (覆寫 RelatedEnd.LoadAsync(MergeOption, CancellationToken)。) | |
MemberwiseClone | (繼承自 Object)。 | |
OnCollectionDeserialized | 在內部用來還原序列化實體物件。 | |
OnDeserialized | 在內部搭配 RelationshipManager 執行個體用來還原序列化實體物件。 (繼承自 RelatedEnd)。 | |
OnSerializing | 在內部用來序列化實體物件。 | |
Remove | 從集合中移除物件並將關聯性標記為待刪除。 | |
ToString | (繼承自 Object)。 |
靠上
事件
名稱 | 描述 | |
---|---|---|
AssociationChanged | 對相關端進行變更時發生。 (繼承自 RelatedEnd)。 |
靠上
明確介面實作
名稱 | 描述 | |
---|---|---|
IListSource.ContainsListCollection | IListSource.ContainsListCollection 實作。一律傳回 false。這表示我們傳回的 IList 包含實際資料,而不是集合清單。 | |
IEnumerable.GetEnumerator | 傳回可用來逐一查看 EntityCollection<TEntity> 所快取之值集合的列舉值。 | |
IListSource.GetList | 傳回集合當做用於資料繫結 (Data Binding) 的 IList。 | |
IRelatedEnd.Add(Object) | 將實體加入至相關端。如果將擁有者附加到快取,則會將所有連接的端點加入至該物件快取,同時將其對應的關係加入至 ObjectStateManager。關聯性的 RelatedEnd 也是固定的。 (繼承自 RelatedEnd)。 | |
IRelatedEnd.Add(IEntityWithRelationships) | 將實體加入至相關端。此方法的運作方式與 Add(object) 完全相同。保留它的目的在於提供與舊版 IRelatedEnd 的回溯相容性。 (繼承自 RelatedEnd)。 | |
IRelatedEnd.Attach(Object) | 將實體附加至相關端。如果相關端已經填滿或部分填滿,這就會合併現有的實體與給定的實體。給定的實體不會視為相關實體的完整集合。擁有者和所有傳入的實體都必須處於 Unchanged 或 Modified 狀態。只有在狀態管理員已在追蹤關聯性執行個體時,才允許刪除的項目。 (繼承自 RelatedEnd)。 | |
IRelatedEnd.Attach(IEntityWithRelationships) | 將實體附加至相關端。此方法的運作方式與 Attach(object) 完全相同。保留它的目的在於提供與舊版 IRelatedEnd 的回溯相容性。 (繼承自 RelatedEnd)。 | |
IRelatedEnd.CreateSourceQuery | 傳回 IEnumerable,它代表屬於相關端的物件。 (繼承自 RelatedEnd)。 | |
IRelatedEnd.Remove(Object) | 從相關端上移除實體。如果擁有者已附加至快取,則將關聯性標記為要刪除,如果關聯性為組合,則也要將實體標記為要刪除。 (繼承自 RelatedEnd)。 | |
IRelatedEnd.Remove(IEntityWithRelationships) | 從相關端上移除實體。此方法的運作方式與 Remove(object) 完全相同。保留它的目的在於提供與舊版 IRelatedEnd 的回溯相容性。 (繼承自 RelatedEnd)。 |
靠上
執行緒安全
這個類型的任何 Public static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。並非所有的執行個體成員都是安全執行緒。