在以前版本的 Razor 中,我会通过渲染如下所示的部分视图来有条件地加载脚本的缩小/调试版本:
@if (Context.IsDebuggingEnabled)
{
<script src="~/debug.js"></script>
}
else
{
<script src="~/release.js"></script>
}
如果MVC6,vNext,VS2015或任何你称之为:)我不知道如何做到这一点。有人知道怎么做吗?
在 MVC6 中,可以使用环境标记帮助程序加载不同版本的脚本,具体取决于开发环境与生产环境。这基于 ASPNET_ENV 环境变量的值。
<environment names="Development">
<script src="~/debug.js"></script>
</environment>
<environment names="Staging,Production">
<script src="~/release.js"></script>
</environment>
捆绑和缩小将使用像 Gulp 或 Grunt 这样的任务来处理。
我在这里详细概述了新方法:http://www.davepaquette.com/archive/2015/05/05/web-optimization-development-and-production-in-asp-net-mvc6.aspx
有点旧,但你可以在控制器中创建一个 ViewBag(或会话对象)并将其传递给像这样的 ViewBag
#if DEBUG
ViewBag.IsDebug = true;
#endif
那么在您看来:
@if (ViewBag.IsDebug)
{
<script src="~/debug.js"></script>
}
else
{
<script src="~/release.js"></script>
}
您可以在 asp.net mvc 中使用捆绑