EntityCollection<TEntity>.Add(TEntity) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Koleksiyona bir nesne ekler.
public:
virtual void Add(TEntity entity);
public void Add (TEntity entity);
override this.Add : 'Entity -> unit
Public Sub Add (entity As TEntity)
Parametreler
- entity
- TEntity
Koleksiyona eklenecek nesne. entity
uygulaması IEntityWithRelationshipsgerekir.
Uygulamalar
Özel durumlar
entity
, null
değeridir.
Örnekler
Bu örnekte Adventure Works Satış Modeli temel alınmaktadır. Bu örnekteki kodu çalıştırmak için AdventureWorks Satış Modeli'ni projenize zaten eklemiş ve projenizi Entity Framework kullanacak şekilde yapılandırmış olmanız gerekir. Bunu yapmak için , Nasıl yapılır: Entity Framework Projesini El ile Yapılandırma ve Nasıl Yapılır: Modeli ve Eşleme Dosyalarını El ile Tanımlama bölümündeki yordamları tamamlayın.
Bu örnek iki yeni SalesOrderHeader
varlık oluşturur, bunları Contact
varlığa ekler ve bir nesneyi kaldırdıktan sonra yöntemini kullanarak Add nesneyi koleksiyona geri ekler.
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 == false)
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);
}
}
Açıklamalar
Add yöntemi bir nesnesi ekler EntityCollection<TEntity> ve iki nesne arasında bir ilişki oluşturur. Kaynak nesne bir ObjectContext örneğe eklendiğinde yöntemi Add de nesnesini öğesine ObjectContextekler. Bu işlem çağrıldığında SaveChanges veri kaynağında ekleme işlemine çevrilir. Daha fazla bilgi için bkz. Nesne Oluşturma, Ekleme, Değiştirme ve Silme.
yöntemi Add aynı nesne örneğinde birden çok kez çağrılabilir.
Şunlara uygulanır
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin