gpt4 book ai didi

asp.net-core - 启动中的有效配置签名是什么?

转载 作者:行者123 更新时间:2023-12-02 17:43:10 25 4
gpt4 key购买 nike

如何在 Startup 类中确定 Configure 的有效参数?有谁知道可接受参数的文档在哪里?

例如,以下两项都是有效的:

public void Configure(IApplicationBuilder app, ILoggerFactory loggerfactory)
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerfactory)

最佳答案

启动方法 ConfigureServicesConfigure 按惯例调用,传递的参数在运行时确定,因此没有固定签名实现(除非明确实现 IStartup )。

ConfigureServices 方法仅允许一个参数:IServiceCollection。该方法可以有该参数,也可以没有。当应用程序启动时,所有其他签名都会导致 InvalidOperationException

Configure 方法更加灵活。除了设置应用程序中间件管道所需的实际 IApplicationBuilder 之外,您还可以向其中添加任何您想要的参数。然后,参数将在运行时进行评估,并从依赖注入(inject)中解析。

因此,您可以传递在服务集合中注册的任何依赖项,因此可以使用依赖项注入(inject)来解析。

这也记录在 application startup documentation 中:

Additional services, like IHostingEnvironment and ILoggerFactory may also be specified in the method signature, in which case these services will be injected if they are available.

关于asp.net-core - 启动中的有效配置签名是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47059224/

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