我试图用Simple Injector做一些基本的构造函数DI,似乎它无法解析Web API控制器的依赖关系.
SimpleInjectorWebApiDependencyResolver
文档的基础,这也是在这里找到的.这似乎不是问题,但我仍然收到以下错误:
类型"MyProject.API.ArticleController"没有默认构造函数
System.ArgumentException at
System.Web.Http.Dispatcher.DefaultHttpControllerActivator.GetInstanceOrActivator的System.Web.Http.Internal.TypeActivator.Create [TBase](Type instanceType)中的System.Linq.Expressions.Expression.New(Type type)(HttpRequestMessage请求,类型为controllerType) System.Web.Http.Dispatcher.DefaultHttpControllerActivator.Create(HttpRequestMessage request,HttpControllerDescriptor controllerDescriptor,Type controllerType),Func`1&activator)
如果有人可以提供一些关于是否应该从其当前状态/呼叫顺序修改任何内容的建议,将不胜感激.
ArticleController(基本结构):
public class ArticleController : ApiController
{
private readonly IArticleRepository articleRepository;
private readonly IUserRepository userRepository;
private readonly IReleaseRepository releaseRepository;
public ArticleController(IArticleRepository articleRepository, IUserRepository userRepository, IReleaseRepository releaseRepository)
{
this.articleRepository = articleRepository;
this.userRepository = userRepository;
this.releaseRepository = releaseRepository;
}
// GET api/Article
public IEnumerable<Article> GetArticles(){ // …
Run Code Online (Sandbox Code Playgroud)