0

我在 Visual Studio 2013 中创建了一个默认的 MVC5 Web 应用程序,并添加到 NuGet的StructureMap.MVC5包中。

我创建了一个 interfaceITester和一个 implementation Tester,我的控制器操作将 anITester作为参数。

但是当我运行该项目时,我得到了错误Cannot create an instance of an interface

根据这个应该只是工作。如果我明确告诉 structuremap 使用Testerfor ITester(而不是依赖默认约定),我也会得到相同的结果。

我之前将StructureMap.MVC4与 MVC4 Web 应用程序一起使用,没有任何问题。

4

1 回答 1

0

开箱即用,它只会进行构造函数注入。

这将起作用

public HomeController(ITester tester) 
{
  _tester = tester;
}

这将导致您看到的错误

public ActionResult Index(ITester tester)
{
  return View();
}
于 2014-08-05T14:05:56.570 回答