Я использую MVVM Light V4 с Ninject. Мои файлы ViewModel находятся в отдельной сборке. Он прекрасно работает, когда ViewModelLocator находится в начальной сборке (Просмотр файлов). Смешиваемость работает.
Я хочу разместить ViewModelLocator в сборке ViewModel, но когда я это делаю, я теряю смешиваемость. После этого он работает нормально только в запущенном приложении (не в режиме разработки).
ViewModelLocator:
static ViewModelLocator()
{
ServiceLocator.Initialize();
if (ViewModelBase.IsInDesignModeStatic)
{
using (var module = new DesignBindingsModule())
{
ServiceLocator.Load(module);
}
}
else
{
using (var module = new DefaultBindingsModule())
{
ServiceLocator.Load(module);
}
}
}
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance",
"CA1822:MarkMembersAsStatic",
Justification = "This non-static member is needed for data binding purposes.")]
public IMainWindowViewModel MainWindow
{
get
{
return ServiceLocator.Get<IMainWindowViewModel>();
}
}
Можно ли поместить ViewModelLocator в отдельную сборку и привязать к нему в режиме разработки?