我已经设置了一个非常简单的依赖项解析器,但它没有为我的控制器调用.
当我点击HomeController时,调用GetService :( http:localhost:xxxx /)但是(http:// localhost:xxxx/api/Customers)则不然.
在Global.asax中我放入了Application_Start
DependencyResolver.SetResolver(new PoorMansResolver());
Run Code Online (Sandbox Code Playgroud)
我的解析器类是
public class PoorMansResolver : IDependencyResolver
{
static readonly ICustomerRepository CustomerRepository = new CustomerRepository();
public object GetService(Type serviceType)
{
if (serviceType == typeof (CustomersController))
return new CustomersController(CustomerRepository);
else return null;
}
public IEnumerable<object> GetServices(Type serviceType)
{
return new List<object>();
}
}
Run Code Online (Sandbox Code Playgroud)
为什么旋转变压器没有被调用?
Sim*_*n C 12
您是否为MVC4和WebAPI设置了解析器?
这将其设置为mvc(System.Web.Mvc):
DependencyResolver.SetResolver(new PoorMansResolver());
Run Code Online (Sandbox Code Playgroud)
但这将它设置为Web API(System.Web.Http):
GlobalConfiguration.Configuration.DependencyResolver = new PoorMansResolver();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3986 次 |
| 最近记录: |