を使い始めましLightInject
たが、No parameterless constructor defined for this object
エラーが発生しました。以下のようなコード、
Global.asax.cs:
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RouteConfig.RegisterRoutes(RouteTable.Routes);
var container = new ServiceContainer();
container.Register<IEmployeeRepository, EmployeeRepository>();
container.RegisterControllers();
container.EnableMvc();
}
コントローラ:
public HomeController(IEmployeeRepository repo)
{
repository = repo;
}
誰でも私を助けることができますか?
スタックトレース:
[MissingMethodException: このオブジェクトにはパラメーターなしのコンストラクターが定義されていません。] System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck) +0
System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark) +113
System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark) +232 System.Activator.CreateInstance(型型, Boolean nonPublic) +83 System.Activator.CreateInstance(型型) +66 System.Web.Mvc.DefaultControllerActivator.Create(RequestContext requestContext、タイプ controllerType) +110[InvalidOperationException: タイプ 'TestTools.Controllers.HomeController' のコントローラーを作成しようとしたときにエラーが発生しました。コントローラーにパラメーターのないパブリック コンストラクターがあることを確認してください。]
System.Web.Mvc.DefaultControllerActivator.Create(RequestContext requestContext, Type controllerType) +247
System.Web.Mvc.DefaultControllerFactory.GetControllerInstance(RequestContext requestContext, Type controllerType)
+438 Web.Mvc.DefaultControllerFactory.CreateController(RequestContext requestContext, String controllerName) +226
System.Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext、IController& コントローラー、IControllerFactory& ファクトリー) +326 System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContextBase httpContext、AsyncCallback コールバック、オブジェクト状態) +157
System.Web.Mvc.MvcHandler. BeginProcessRequest(HttpContext httpContext、AsyncCallback コールバック、オブジェクト状態) +88
System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext コンテキスト、AsyncCallback cb、オブジェクト extraData) +50
System.Web.CallHandlerExecutionStep.System.Web。 HttpApplication.IExecutionStep.Execute() +301 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155