我想在我的视图上使用环境标记(.NET Core 3和VS 2019最新更新)。
只需创建一个简单的项目,然后在我的视图中(标题部分)添加下面显示的代码,但是当我运行它时,它同时加载了两个CSS文件,为什么呢?我的意思是我的机器具有产品环境变量,因此,代码应仅加载第二个.min.css
文件-不能同时加载。
在项目路径上运行.exe文件时,我测试了机器环境,\bin\Debug\netcoreapp3.0
并显示“主机环境:生产”,那么这是怎么回事?
<environment include="Development">
<link rel="stylesheet" href="~/css/StyleSheet1.css" />
</environment>
<environment exclude="Development">
<link rel="stylesheet" href="~/css/StyleSheet1.min.css" asp-append-version="true" />
</environment>
在Chrome检查器中:
它不能同时加载已处理的CSS文件和未处理的CSS文件,我错了吗?
经过一天的搜索,我发现这是一项简单的工作,只需要在视图上添加一些环境标签即可,效果很好,但是为什么加载两个文件却很奇怪。
更新1:
我的代码上有两个“ Development”环境变量,但是我的实际环境变量名称是“ Production”,这意味着第一部分的CSS文件不再应该加载,但确实可以加载。
另一方面,当您删除代码的第二部分时,我的意思是:
<environment exclude="Development">
<link rel="stylesheet" href="~/css/StyleSheet1.min.css"
asp-append-version="true" />
</environment>
它必须不加载任何内容,因为环境名称在我的代码上为“ Development”,而实际环境名称为“ Production”,并且代码的第一部分在说环境变量名称是否为“ Development”,请加载此CSS,否则不要这样做。
经过大量搜索后,我发现我应该在视图上添加文件“ _ViewImports.cshtml”,并在其上添加以下代码:
@using WebApplicationTest
@using WebApplicationTest.Models
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
我不知道为什么要这样做以解决此问题,但是.net核心团队会以更好的方式进行处理。在我看来,这会使新手感到困惑。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句