Я создаю свое первое приложение Silverlight. Это приложение имеет несколько форм, которые позволяют пользователю сохранять клиентов, поставщиков, сотрудников и т. Д. Каждая страница имеет один родительский пользовательский контроль (с соответствующей моделью просмотра) и одно или несколько дочерних пользовательских элементов управления (каждый из которых имеет собственную собственную модель просмотра). Например, клиентская форма будет иметь пользовательский контроль Customer в качестве родителя и адрес Usercontrol, Phone Numbers UserControl как дочерние пользовательские элементы управления в форме. Теперь родительский «Клиент» отвечает за обеспечение сохранения данных для клиентов, адресов и телефонов, когда пользователь нажимает кнопку «Сохранить». За кулисами я мог бы поделиться экземпляром datacontext между моделями просмотра клиентов, адресов и телефонов. Поэтому, когда нажата кнопка «Сохранить», пользовательский контроль клиента может сохранять данные для всех трех (так как в его datacontext будут также объекты Address и PhoneNumber).Общий контекст между файлами модели
Что я хотел бы знать, как передать этот datacontext от клиента до адреса и номера телефона? Один из способов мог бы состоять в том, чтобы передать datacontext в модель представления адреса и номера телефона в их соответствующих конструкторах, но тогда мне нужно будет обеспечить, чтобы конструкторы Address и PhoneNumber вызывались только после того, как была создана клиентская модель. может ли быть лучшее решение? Предлагает ли MEF лучшее решение?