c# - 如何在 ASP.NET Core 3.0 中调用 UseWebRoot
问题描述
在 ASP.NET Core 2.2 中,我可以设置UseWebRoot()
如下:
public static void Main(string[] args)
{
CreateWebHostBuilder(args)
.UseUrls("http://*:5000")
.UseWebRoot(@".\WebSite\wwwroot\")
.Build()
.Run();
}
但是我不知道我今天应该怎么做,因为已经没有这样的方法了。
解决方案
ASP.NET Core 3.0 项目默认使用Generic Host。在项目模板中,它的配置如下:
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webHostBuilder =>
{
webHostBuilder.UseStartup<Startup>();
});
在上面的示例中,webHostBuilder
是 的实现IWebHostBuilder
,它仍然包含UseWebRoot
扩展方法。这意味着您可以像在 2.2 中那样调用它,但它只是移动到ConfigureWebHostDefaults
上面显示的传递给的委托内部。这是完整的示例:
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webHostBuilder =>
{
webHostBuilder.UseStartup<Startup>();
webHostBuilder.UseWebRoot(@".\WebSite\wwwroot\");
});
推荐阅读
- php - 如何将面包屑模式数据的编号从 1 替换为 ....?
- python - Python matplotlib 保存数字
- c - 退出循环后奇怪的多维数组值
- javascript - ReactJS 在键入字段并同时保存原始数据时自动格式化
- android - 当我使用“内置支持双向数据绑定”时,我不需要编写额外的代码吗?
- reactjs - 在 React 上翻译 i18next 找不到密钥
- elixir - 如果在 elixir 中有调用多个 api 并返回错误列表的好方法是什么?
- git - Visual Code Studio 中的版本控制隐藏/删除了我硬盘上的本地文件
- python - 使用 dict 代替 class
- python - 当敌人被杀死时,Explosions Sprite Despears Way to Fast 如何解决这个问题?