entity framework + repository + unit oder arbeitsfrage

Ich denke darüber nach, ein neues Projekt mit EF 4 zu starten und einige Artikel durchzuarbeiten. Ich habe einen Artikel über EF mit Repository-Muster und Arbeitseinheit gefunden http: //blogs.msdn.com/b/adonet/archive/2009/06/16/using-repository-and-unit-of-work-patterns-with-entity-framework-4-0.asp)

enn Sie sich diesen Artikel ansehen, wird der ObjectContext als UnitOfWork verwendet und an das Repository übergebe

Meine Frage ist, was ist, wenn ich 2 ObjectContext habe, was bedeutet, dass ich 2 Arbeitseinheiten habe, aber ich möchte, dass alle Operationen in diesen 2 Kontexten eine einzige Arbeitseinheit sind. Ist dieses Szenario möglich? Ich möchte nicht bei jedem Kontext save aufrufen, ich möchte, dass er transaktionell ist ... ohne transactioncope zu verwenden ...

Zum Beispiel habe ich einen Kontext, der das Operationsprotokoll verwaltet, und einen anderen Kontext, der Aufträge verwaltet. Nehmen wir an, ich habe in meiner Business-Schicht eine Methode namens AddOrder (). AddOrder () verwendet den Auftragskontext, um einen neuen Auftrag zu erstellen, verwendet aber auch den Operationsprotokollkontext, um einen neuen Operationsprotokolleintrag zu erstellen. Da dies 2 Kontexte sind, muss ich save für beide Kontexte aufrufen, um einen Commit durchzuführen. Vielleicht besteht die einzige Option darin, nur einen einzigen Kontext zu haben.

EDIT: Ich habe zum Beispiel 2 Kontexte verschiedener Typen gemeint: OperationalLogContext und OrderContext.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage