gpt4 book ai didi

dependency-injection - MVC 4 和 Unity,向 WebAPI Controller 注入(inject)依赖项

转载 作者:行者123 更新时间:2023-12-04 08:23:20 25 4
gpt4 key购买 nike

我是 MVC 的新手,我遇到了一个问题。我设法找到的所有示例都指的是简单 Controller ,而不是 API Controller 。也许任何人都有一个工作代码示例,说明如何在 Application_Start() 上将依赖项注册到 Unity 并调整代码,以便在创建我的 apicontroller 类后,将正确的依赖项传递给它。假设这是我的 Controller 的定义:

public class BookController : ApiController
{
private IBookService bookSerivce;

public BookController (IBookService bookSerivce)
{
this.bookSerivce= bookSerivce;
}
}

我希望通过以下方式统一注册它:

UnityContainer container = new UnityContainer();

// Register services
container.RegisterType<IBookService , BookService>();

// Register controllers
container.RegisterType<IHttpController, BookController>("Books");

现在,我需要做什么才能让 MVC 使用 unity 来解决依赖关系,开始创建该 Controller 的实例并将依赖关系传递给它?

我正在使用 MVC 4。任何想法将不胜感激。

干杯

最佳答案

Mark Seemann 有两篇关于使用 WebAPI 进行依赖注入(inject)的文章。

Dependency Injection and Lifetime Management with ASP.NET Web API

Dependency Injection in ASP.NET Web API with Castle Windsor

如果您将 CaSTLe Windsor 替换为 Unity,示例应该可以正常工作。

关于dependency-injection - MVC 4 和 Unity,向 WebAPI Controller 注入(inject)依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13223166/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com