gpt4 book ai didi

c# - .net core mvc 的 Spring boot Autowired 注释等价物

转载 作者:太空狗 更新时间:2023-10-29 23:20:09 26 4
gpt4 key购买 nike

问题说明了一切。

在 spring boot 中,我可以使用 AutoWired 注释自动将依赖项注入(inject)我的 Controller 。

class SomeController extends Controller {
@AutoWired
private SomeDependency someDependency;
}

对于 我很好奇它是否有这个注解,目前的方法是将它作为参数添加到构造函数中

[Route("api/[controller]")]
public class SomeController : Controller
{
private SomeContext _someContext;

public SomeController(SomeContext someContext)
{
_someContext = someContext;
}
}

最佳答案

没有注释。

您只需要确保在组合根目录下向 DI 容器注册依赖项,通常是 Startup.ConfigureServices

public void ConfigureServices(IServiceCollection services) {

//...

services.AddScoped<SomeContext>();

//...
}

如果在你的情况下 SomeContext 是一个 DbContext 派生类,那么就这样注册它

var connection = @"some connection string";
services.AddDbContext<SomeContext>(options => options.UseSqlServer(connection));

当解析 Controller 时,框架将解析已知的 explicit dependencies并注入(inject)它们。

引用 Dependency Injection in ASP.NET Core

引用 Dependency injection into controllers

关于c# - .net core mvc 的 Spring boot Autowired 注释等价物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48387157/

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