Единица работы используется для управления постоянством в нескольких хранилищах , а не в нескольких контекстах объектов .
Вы не сможете сохранить изменения в нескольких контекстах, используя единицу работы, поскольку UoW просто реализован как оболочка для ObjectContext. Поэтому вам понадобится две единицы работ.
В целом, все станет грязно. У вас будет два обновленных OC, которые будут обрабатывать каждый HTTP-запрос, не говоря уже о том, что управление транзакциями станет кошмаром.
Должен у вас есть два ObjectContexts? В чем причина этого? Если это для масштабируемости, не беспокойтесь; это будет слишком болезненно для других вещей, таких как ваш репозиторий, единица работы и управление областью http.
Трудно дать хороший совет, не видя, как настроены ваши репозитории.
Попробуйте создать классы-оболочки для каждого контекста объекта, каждый из которых реализует IUnitOfWork и вторичный уникальный интерфейс (IEfSqlContext1 и т. Д., Представляющий одну из ваших моделей / контекстов).
Затем вы можете ввести любой контекст, какой захотите.
Как я уже сказал, старайтесь избегать двух EDMX / Контекстов. Это больше проблем, чем стоит.