Entity Framework: Überprüfen Sie alle Beziehungen, die ein entity für foreign key verwenden

Ich habe eine Entität, nennen wir es CommonEntity hat einen primary key als foreign key eingesetzt in vielen anderen Einrichtungen. Wie die Anwendung entwickelt wird, diese verbindungen weiterhin zu wachsen.

Ich würde gerne einen Weg, um zu sehen, ob CommonEntity sicher gelöscht werden können (D. H. es ist nicht von einer anderen Entitäten).

Ich begreife, dass ich tun kann,

if(!ce.EntityA.Any() && !ce.EntityB.Any() ... && !ce.EntityN.Any())
{
   //Delete
}

aber ich bin der Hoffnung, für ein Weg, um einfach überprüfen Sie alle Beziehungen automatisch, da ich nicht Liebe die Idee, wieder zu kommen und ändern Sie diesen code manuell jedes mal, wenn wir eine neue Beziehung. Vielleicht gibt es etwas in EF4+ ich bin mir nicht bewusst?

Dachte ich, es wäre möglich, einen Transaktionsbereich, um nur versuchen, und entfernen Sie das Objekt und Rollen Sie es zurück, wenn es fehlschlägt, war mir aber nicht sicher, ob es irgendwelche negativen Nebenwirkungen, die mit diesem Ansatz.

Gibt es einen besseren Ansatz?

EDIT: Sieht aus wie VS2012 verwendet hat, EF5, obwohl das Projekt ist .Net 4, so hat er erstellt das Modell mit POCOs obwohl es generiert aus einer DB.

InformationsquelleAutor BenC3 | 2012-10-12
Schreibe einen Kommentar