2010-06-20 13 views

Antwort

6

Die am besten geeignete Antwort hier ist wahrscheinlich eine event irgendwo auf Ihrer Business-Schicht. Ihr UI-Code kann das Ereignis abonnieren und das Ereignis behandeln, indem er (falls erforderlich) zum UI-Thread wechselt und sich selbst aktualisiert.

Dann wird der Business-Code muss nicht über die Benutzeroberfläche kennen und können das gleiche ohne jede UI arbeiten (aber wie bei allen Teilnehmern/Rückrufe, müssen Sie für null überprüfen, bevor Sie den Delegaten aufzurufen) .

4

Die einfachste Möglichkeit besteht darin, dass die Benutzeroberfläche der Business-Schicht einen Stellvertreter zum Anrufen (oder einer Schnittstelle) übergibt, damit sie den Fortschritt anzeigen kann.

Dies ist auch wirklich einfach zu testen, weil es die Sorgen trennt: In Ihren Business-Schicht-Tests können Sie einen Test-Delegierten übergeben und sicherstellen, dass er aufgerufen wird. In Ihren UI-Tests können Sie die Business-Ebene fälschen und so tun, als ob, dass der Fortschritt ist, den entsprechenden Delegierten aufrufen und überprüfen, ob die Benutzeroberfläche ordnungsgemäß aktualisiert wird.

Verwandte Themen