【问题标题】:What is webBuilder in ConfigureWebHostBuilder function?配置 WebHostBuilder 功能中的 Web Builder 是什么?
【发布时间】:2021-07-16 10:04:17
【问题描述】:

这是.Net 5 razor页面中programs.cs的代码,我理解lambda表达式,它的语法是这样的:(参数)=> {statement}我们必须将参数传递给它,但我没有'不明白 webBuilder 参数是如何传递给 ConfugureWebHostDefaults 函数的?

    public static IHostBuilder CreateHostBuilder(string[] args) =>
        Host.CreateDefaultBuilder(args)
            .ConfigureWebHostDefaults(webBuilder =>
            {
                webBuilder.UseStartup<Startup>();
            });

【问题讨论】:

    标签: c# .net asp.net-mvc


    【解决方案1】:

    “我们必须将参数传递给它” - 这就是你出错的地方。 something 必须在调用时向其传递一个参数,该参数不一定是 you。

    在这种情况下,您将 lambda 传递给 ConfigureWebHostDefaults。在某些时候,该方法将构造(直接或间接,细节对我们作为调用者无关紧要)IWebHostBuilder。在那之后的某个时候,该方法将调用 lambda 并将 webBuilder 传递给它。

    【讨论】:

      【解决方案2】:

      ConfigureWebHostDefaults接受回调(Action&lt;IWebHostBuilder&gt;),接口IWebHostBuilder初始化WebHostBuilder,并有UseStartup方法标识应用启动类

      参考:

      1. ConfigureWebHostDefaults => https://docs.microsoft.com/en-us/dotnet/api/microsoft.extensions.hosting.generichostbuilderextensions.configurewebhostdefaults?view=aspnetcore-5.0#parameters
      2. IWebHostBuilder => https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.hosting.iwebhostbuilder?view=aspnetcore-5.0

      【讨论】:

        猜你喜欢
        • 2011-02-06
        • 2018-09-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-30
        • 2016-06-07
        • 2023-04-03
        相关资源
        最近更新 更多