EntityCollection<TEntity>.Contains(TEntity) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ermittelt, ob die Auflistung ein bestimmtes Objekt enthält.
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
Parameter
- entity
- TEntity
Das im EntityCollection<TEntity> zu suchende Objekt.
Gibt zurück
true
, wenn das Objekt in EntityCollection<TEntity> gefunden wird, andernfalls false
.
Implementiert
Beispiele
Dieses Beispiel beruht auf dem AdventureWorks Sales-Modell. Zum Ausführen des Codes in diesem Beispiel müssen Sie dem Projekt bereits das AdventureWorks Sales-Modell hinzugefügt und das Projekt zur Verwendung des Entity Framework konfiguriert haben. Führen Sie hierzu die Verfahren unter Vorgehensweise: Manuelles Konfigurieren eines Entity Framework-Projekts und Vorgehensweise: Manuelles Definieren des Modells und der Zuordnungsdateien aus.
In diesem Beispiel werden die folgenden Aufgaben ausgeführt:
Zwei neue
SalesOrderHeader
-Entitäten werden erstellt und derContact
-Entität hinzugefügt.Ruft alle verknüpften Enden vom RelationshipManager ab, der der "Contact"-Entität zugeordnet ist.
Durchläuft die Auflistung von IRelatedEnd.
Ruft die EntityCollection<TEntity> für jedes verknüpfte Ende ab.
Verwendet die Remove-Methode, um eine der Entitäten aus der Auflistung zu entfernen.
Ruft die Contains-Methode auf, um zu ermitteln, ob das Objekt aus der Auflistung entfernt wurde.
Verwendet die Add-Methode, um die Entität erneut hinzuzufügen.
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);
}
}
Hinweise
Verwendet die Object.Equals-Methode, um das angegebene Objekt mit den bereits in der Auflistung enthaltenen Objekten zu vergleichen.