mvvm - RegisterType <>在Silverlight上不可见

标签 mvvm silverlight-4.0 prism

我正在跟踪在StackOverflow上找到的示例,一切进行得很好,直到需要注册我的类型为止。

我的Web应用程序在带有Prism和MVVM的Silverlight 4上运行。

该示例使用“ Microsoft.Practices.Unity ”(这是Windows窗体应用程序)

Bootstrapper.cs

    protected override void ConfigureContainer()
    {
        base.ConfigureContainer();
        Container.RegisterType<IApplicationMenuRegistry, MenuRegistry>();
        Container.RegisterType<IApplicationCommands, ApplicationCommands>();
        Container.RegisterType<ShellViewModel, ShellViewModel>(new Microsoft.Practices.Unity.ContainerControlledLifetimeManager());
    }

我的正在使用: Microsoft.Practices.Unity.Silverlight (网络),并引发以下错误:

The non-generic method 'Microsoft.Practices.Unity.IUnityContainer.RegisterType(...) cannot be used with type arguments.



而且RegisterType<>构造函数对我不可见。我必须注册哪些替代品?

最佳答案

我正在使用Unity for Silverlight,还没有出现此问题。

根据http://unity.codeplex.com/workitem/8205的帖子,您需要添加“using Microsoft.Practices.Unity;”。到文件。 Resolve的通用版本是扩展方法,您需要引入 namespace 才能使用它们。

显然,ReSharper可能认为using语句不是必需的,并可能将其删除。

希望能有所帮助。

关于mvvm - RegisterType <>在Silverlight上不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4017929/

相关文章:

wpf - 在两个WPF应用程序之间共享模型类?

javascript - 如何重置 Kendo MVVM 单选按钮的选中状态?

c#-4.0 - 有没有办法在不使用插件的情况下以Xamarin形式(软件模式-mvvm)创建弹出窗口?

Silverlight 可编辑组合框

wpf - Prism:创建外壳后将模块加载到目录中

c# - 测试DelegateCommand异步,无需公开处理程序

c# - 从 Xaml 运行异步方法

c# - 变量不保存在对象中

silverlight:部署后将 uri 更改为我的数据服务

c# - Bing路由服务故障exception1错误