Моя основная настройка очень похожа на это; http://visualstudiomagazine.com/articles/2011/10/01/wpf-and-inversion-of-control.aspx
Настройка MVVM в WPF. Я вставляю UnitOfWork и RepositoryFactory в ViewModel. Это отлично поработало для диалогов, которые я написал до сих пор... Однако большие части нашего приложения находятся внутри присоединяемых окон (думаю, Visual Studio UI). Они открыты до тех пор, пока это приложение.
Итак, я думал о том, чтобы переместить unitofwork из жизни в диалоге вплоть до времени вызова метода (например, Button.Click()).
Но я не придумал хороший способ сделать то, что не нарушит некоторые преимущества, которые я получаю от использования Castle Windsor в качестве контейнера IoC и/или не следую за DRY.
Это кажется довольно хорошим... http://www.codeproject.com/Articles/543810/Dependency-Injection-and-Unit-Of-Work-using-Castle Но я беспокоюсь о том, что сеанс завернут в полу-синглтон, и я беспокоюсь, что, возможно, пешком, удалив прямой доступ к UnitOfWork.
У кого-нибудь есть хорошее решение для этого? Является ли приведенный выше кодпроектом хорошим, а если нет, то какие его недостатки?