Этот вопрос может показаться наивным, но я не смог понять этот код в файле ViewModelLocator.cs:
static ViewModelLocator()
{
ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);
if (ViewModelBase.IsInDesignModeStatic)
{
SimpleIoc.Default.Register<IDataService, Design.DesignDataService>();
}
else
{
SimpleIoc.Default.Register<IDataService, DataService>();
}
SimpleIoc.Default.Register<MainViewModel>();
}
Я вижу, что мы используем DataService для получения данных (например, из WCF-сервиса) и присваиваем их MainViewModel. Но что если я регистрирую более одной ViewModel? Вот так:
static ViewModelLocator()
{
....
SimpleIoc.Default.Register<MainViewModel>();
SimpleIoc.Default.Register<Page2ViewModel>();
}
и допустим у меня есть еще один DataService (DataService2 например), но этот я буду использовать с Page2ViewModel. как я могу это сделать?
Также, если кто-то может мне помочь (или хотя бы дать ссылку для чтения) по поводу вышеприведенного кода. Я понятия не имею, что он означает.