什么是Blazor应用程序的app.config / web.config解决方案。 我几乎可以肯定,这对于Blazor服务器端项目是可行的。但是,我们更想知道客户端项目将如何处理配置。
从本质上讲,我需要知道应用在哪种环境下运行(例如,开发,测试,生产)。
Blazor的配置故事是什么?
答案 0 :(得分:4)
与 ASP.NET核心相同Configuration。基本上,每个环境都有一个appsettings.environment.json
文件,并使用IConfiguration
界面中的构建到bind your settings to classes。因此,设置以json
格式存储:
{
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
},
"Serilog": {
"LevelSwitches": { "$controlSwitch": "Debug" },
"MinimumLevel": { "ControlledBy": "$controlSwitch" },
"WriteTo": [
...
多少个环境以及如何称呼取决于您自己。 这是一个示例:
在运行时,环境将从OS environment variable ASPNETCORE_ENVIRONMENT
的值中扣除。出于开发目的,您可以创建配置文件并像这样设置ASPNETCORE_ENVIRONMENT
和launchSettings.json
:
"profiles": {
"Development": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
在部署或开始执行Blazor
应用程序之后,将使用服务器端和客户端应用程序的主机ASPNETCORE_ENVIRONMENT
。请记住,即使它是客户端/ SPA应用程序,它仍然托管在服务器上。
同样对于客户端Blazor
应用程序,appsettings
不会交付给客户端,您也不想向客户端公开连接字符串和其他敏感设置,对吧?
作为旁注,如果您将Blazor
应用托管在IIS中(作为反向代理),则会创建一个 web.config 文件,目的是指示IIS如何启动该应用程序,要传递的参数以及其他一些东西。