EntityCollection<TEntity>.Add(TEntity) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
컬렉션에 개체를 추가합니다.
public:
virtual void Add(TEntity entity);
public void Add (TEntity entity);
override this.Add : 'Entity -> unit
Public Sub Add (entity As TEntity)
매개 변수
- entity
- TEntity
컬렉션에 추가할 개체입니다.
entity
는 IEntityWithRelationships를 구현해야 합니다.
구현
예외
entity
이(가) null
인 경우
예제
이 예제는 Adventure Works Sales 모델을 기반으로 합니다. 이 예제에서 코드를 실행하려면 프로젝트에 AdventureWorks 판매 모델을 이미 추가하고 Entity Framework를 사용하도록 프로젝트를 구성해야 합니다. 이렇게 하려면 방법: 수동으로 Entity Framework 프로젝트 구성 및 방법: 모델 및 매핑 파일 수동 정의의 절차를 완료합니다.
이 예제에서는 두 개의 새 SalesOrderHeader
엔터티를 만들고 엔터티에 Contact
추가하고 개체를 제거한 후 메서드를 사용하여 Add 개체를 컬렉션에 다시 추가합니다.
using (AdventureWorksEntities context =
new AdventureWorksEntities())
{
Contact contact = new Contact();
// Create a new SalesOrderHeader.
SalesOrderHeader newSalesOrder1 = new SalesOrderHeader();
// Add SalesOrderHeader to the Contact.
contact.SalesOrderHeaders.Add(newSalesOrder1);
// Create another SalesOrderHeader.
SalesOrderHeader newSalesOrder2 = new SalesOrderHeader();
// Add SalesOrderHeader to the Contact.
contact.SalesOrderHeaders.Add(newSalesOrder2);
// Get all related ends
IEnumerable<IRelatedEnd> relEnds =
((IEntityWithRelationships)contact)
.RelationshipManager.GetAllRelatedEnds();
foreach (IRelatedEnd relEnd in relEnds)
{
// Get Entity Collection from related end
EntityCollection<SalesOrderHeader> entityCollection =
(EntityCollection<SalesOrderHeader>)relEnd;
Console.WriteLine("EntityCollection count: {0}",
entityCollection.Count);
// Remove the first entity object.
entityCollection.Remove(newSalesOrder1);
bool contains = entityCollection.Contains(newSalesOrder1);
// Write the number of items after one entity has been removed
Console.WriteLine("EntityCollection count after one entity has been removed: {0}",
entityCollection.Count);
if (!contains)
Console.WriteLine("The removed entity is not in in the collection any more.");
//Use IRelatedEnd to add the entity back.
relEnd.Add(newSalesOrder1);
Console.WriteLine("EntityCollection count after an entity has been added again: {0}",
entityCollection.Count);
}
}
설명
메서드는 Add 에 개체를 EntityCollection<TEntity> 추가하고 두 개체 간의 관계를 만듭니다. 소스 개체가 인스턴스에 ObjectContext 연결되면 메서드는 Add 개체 ObjectContext도 에 추가합니다. 이 작업은 가 호출될 때 SaveChanges 데이터 원본의 삽입 작업으로 변환됩니다. 자세한 내용은 만들기, 추가, 수정, 및 개체 삭제합니다.
메서드는 Add 동일한 개체 인스턴스에서 여러 번 호출할 수 있습니다.
적용 대상
.NET