【发布时间】:2014-01-28 00:05:50
【问题描述】:
我刚刚完成我的新应用程序,但我卡住了。我的应用程序分为两部分 - 远程和本地。我需要的是根据一些异步反序列化应用程序设置为接口注册一个类。这是“想法代码”
public class ViewModelLocator
{
static ViewModelLocator()
{
ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);
// It can't work :(((
if(await SettingsManager.LoadSettings().EnableRemote) // <<<<<<
{
SimpleIoc.Default.Register<IMyService, MyRemoteService>();
}
else
{
SimpleIoc.Default.Register<IMyService, MyLocalService>();
}
SimpleIoc.Default.Register<MainViewModel>();
SimpleIoc.Default.Register<SomeOtherViewModel>();
}
我该如何解决?这些设置在我的 WinRT 应用程序的独立存储中的 XML 文件中序列化。请问大家有什么建议吗?
【问题讨论】:
-
不使用异步加载配置?无论如何知道何时加载设置?如果有,请事先加载它们并等待它完成。
标签: c# mvvm windows-8 windows-runtime mvvm-light