团结和Container.Resolve
Unity and Container.Resolve
我有一个 class,我需要使用我的容器从接口解析一个具体的 class。这个 class 不能采用构造函数,所以我尝试使用 container.Resolve 方法解析 class。
在我的 UnityHelper 中,我已经设置了所有容器项目,有问题的项目定义为:
container.RegisterType<OAuthAuthorizationServerProvider, AuthorisationServerProvider>();
然后在我的 startup.cs 文件中,我试图根据接口解析 class:
public class 启动
{
私人 OAuthAuthorizationServerProvider _authorisationServiceProvider;
public Startup()
{
var _container = UnityConfig.GetConfiguredContainer();
_authorisationServiceProvider = _container.Resolve<OAuthAuthorizationServerProvider>();
}
但是,我在“Resolve”上收到设计时错误,说非泛型方法不能与类型化参数一起使用。
我见过一些地方似乎我做得对。例如:
我做错了什么?
问题是您必须手动添加对 Unity 的引用。对于那些得到这个的人,确保你有:
using Microsoft.Practices.Unity;
我有一个 class,我需要使用我的容器从接口解析一个具体的 class。这个 class 不能采用构造函数,所以我尝试使用 container.Resolve 方法解析 class。
在我的 UnityHelper 中,我已经设置了所有容器项目,有问题的项目定义为:
container.RegisterType<OAuthAuthorizationServerProvider, AuthorisationServerProvider>();
然后在我的 startup.cs 文件中,我试图根据接口解析 class:
public class 启动 { 私人 OAuthAuthorizationServerProvider _authorisationServiceProvider;
public Startup()
{
var _container = UnityConfig.GetConfiguredContainer();
_authorisationServiceProvider = _container.Resolve<OAuthAuthorizationServerProvider>();
}
但是,我在“Resolve”上收到设计时错误,说非泛型方法不能与类型化参数一起使用。
我见过一些地方似乎我做得对。例如:
我做错了什么?
问题是您必须手动添加对 Unity 的引用。对于那些得到这个的人,确保你有:
using Microsoft.Practices.Unity;