Я пытаюсь поделиться службой данных (Entity Manager), обернутой в хранилище из ViewModel (называемой «AVM») в модуле A, в ViewModel (называемую «BVM») в модуле B, и я не могу заставить это работать. Мы используем PRISM / Unity 2.0
Это мой сценарий:
Пользователь может открывать несколько экранов клиента (составной вид в виде мини-оболочки) друг с другом
заказчик (единица работы). Мы реализуем это, используя дочерние контейнеры. Каждый дочерний контейнер разрешает свой собственный репозиторий со своим собственным менеджером сущностей (репозиторий является одноэлементным в дочернем контейнере). Это делается в модуле A. В основной оболочке есть главный менеджер области, и каждый экран Customer со своим дочерним контейнером создает область области действия.
На каждом экране клиента есть вид «AV» (подключенный к ViewModel «AVM») с SubRegion (элемент управления вкладками), зарегистрированный как «SubRegion». Мы создаем это с 'Screen Factory'
В модуле B у нас есть клиентские заказы в представлении «BV» и ViewModel «BVM». В конструкторе модуля B мы получаем основной контейнер путем инъекции. В методе initialize мы разрешаем (главный) менеджер области и регистрируем View 'BV' вместе с ним. В конструкторе View 'BV' ViewModel 'BVM' внедряется / создается.
Теперь это работает, но ViewModel 'BVM' не может получить дочерний контейнер. Это только главный контейнер.
Это выполнимо, или я должен сделать это по-другому?
Спасибо,
Нильс