asp.net-mvc - 哪些字符串值需要`CreateDefaultBuilder` 方法?
问题描述
ASP.NET 核心 MVC 2.1
在这里的文档中,我看到了CreateDefaultBuilder(string[] args)
方法。但我没有看到它使用的任何例子。在这种情况下,该方法需要哪些参数?我可以传递这样的参数:"Hello", "World"
但这不太可能是该方法所期望的......
解决方案
命令行参数通常用于在执行程序时将一些配置信息传递给程序。
一个典型的程序调用CreateDefaultBuilder
开始设置主机。
任何加载的配置都可能被命令行参数覆盖。
例如,以下内容直接取自带有一些或我自己的措辞的文档
假设这样的hosting.json
文件
{
urls: "http://*:5005"
}
UseUrls
首先使用hosting.json config覆盖提供的配置,其次是命令行参数config:
public class Program
{
public static void Main(string[] args)
{
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args)
{
var config = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("hosting.json", optional: true)
.AddCommandLine(args) //<--
.Build();
return WebHost.CreateDefaultBuilder(args)
.UseUrls("http://*:5000") //<--
.UseConfiguration(config) //<--
.Configure(app =>
{
app.Run(context =>
context.Response.WriteAsync("Hello, World!"));
})
.Build();
}
}
要指定在特定 URL 上运行的主机,可以在执行时从命令提示符传入所需的值dotnet run
。命令行参数覆盖了 hosts.json 文件中的 urls 值,服务器监听 8080 端口:
dotnet run --urls "http://*:8080"
以下文章也应该有所帮助
推荐阅读
- plsql - PL/SQL。是否可以使用 SELECT INTO from table dual?
- vue.js - 使用 Vuex 和 Onboard.js 的最大调用堆栈大小超出错误
- reactjs - 即使 Swiper React 工作正常,ESLint 也无法解析路径
- python - BeautifulSoup - 隔离特定表的内容
- linux - ext2 - 当你创建一个文件并将它放在某个地方时,实际发生了什么?
- javascript - 单击锚链接时关闭全屏导航菜单
- python - 如何突出显示matplotlib中多条曲线中的最低曲线(包络线)
- c# - 为什么我在尝试创建 ASP.NET MVC 项目时创建标识时出现脚手架项目错误
- python - Selenium 在尝试放置文本时返回“消息:元素不可交互”
- typescript - 打字稿记录
其中对象“id”属性等于 Key