EntityCollection<TEntity>.Contains(TEntity) Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Meghatározza, hogy létezik-e egy adott objektum a gyűjteményben.
public:
virtual bool Contains(TEntity entity);
public bool Contains(TEntity entity);
abstract member Contains : 'Entity -> bool
override this.Contains : 'Entity -> bool
Public Function Contains (entity As TEntity) As Boolean
Paraméterek
- entity
- TEntity
Az objektum, amely a .- EntityCollection<TEntity>ban található.
Válaszok
trueha az objektum a ; egyéb helyen találhatóEntityCollection<TEntity>. false
Megvalósítás
Példák
Ez a példa az Adventure Works értékesítési modellen alapul. A jelen példában szereplő kód futtatásához már hozzá kell adnia az AdventureWorks értékesítési modelljét a projekthez, és konfigurálnia kell a projektet az Entity Framework használatára. Ehhez végezze el a Hogyan is végezze el a következő lépéseket: Entitás-keretrendszer manuális konfigurálása Project és Hogyan: A modell és a leképezési fájlok manuális megadása.
Ez a példa a következőket teszi:
Két új
SalesOrderHeaderentitást hoz létre, és hozzáadja őket azContactentitáshoz.Lekéri az összes kapcsolódó végpontot a RelationshipManager Partner entitáshoz társítottak közül.
Iterates keresztül gyűjtemény s IRelatedEnd.
Lekéri az EntityCollection<TEntity> egyes kapcsolódó végpontokat.
A metódus használatával Remove eltávolítja az egyik entitást a gyűjteményből.
Meghívja a Contains metódust annak megállapítására, hogy az objektum el lett-e távolítva a gyűjteményből.
A metódus használatával Add adja vissza az entitást.
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);
}
}
Megjegyzések
Ezzel a Object.Equals módszerrel hasonlítja össze a megadott objektumot a gyűjteményben már szereplő objektumokkal.