gpt4 book ai didi

bundle - 如何有条件地添加脚本包?

转载 作者:行者123 更新时间:2023-12-03 23:42:51 24 4
gpt4 key购买 nike

我有一个 javascript 包,我只想在测试时包含它,而不是在将代码部署到生产时包含它。

我添加了一个名为 IsEnabledTestingFeatures 的属性.在 BundleConfig.cs 文件中,我像这样访问它:

if(Properties.Settings.Default.IsEnabledTestingFeatures) {
bundles.Add(new ScriptBundle("~/bundles/testing").Include("~/Scripts/set-date.js"));
}

这工作正常。

现在,如果此属性设置为 true,我只想在我的页面中包含该包。

我尝试了以下方法,但编译器提示它找不到 Default命名空间:
@{
if( [PROJECT NAMESPACE].Properties.Default.IsEnabledTestingFeatures)
{
@Scripts.Render("~/bundles/testing")
}
}

我试图找到如何访问 Scripts.Render Controller 本身的功能,但没有成功。

我更喜欢在 View 本身中添加包,但会通过 Controller 添加它。

最佳答案

ViewBag应该没有必要...

使用 appSettings从 web.config 你不需要重新编译进行测试,它很容易部署。

<appSettings>
<add key="TestingEnabled" value="true" />
</appSettings>

查看或布局
@{
bool testing = Convert.ToBoolean(
System.Configuration.ConfigurationManager.AppSettings["TestingEnabled"]);
}

@if (testing) {
@Scripts.Render("~/bundles/testing")
}

我会定义 "~/bundles/testing"BundleConfig无论测试条件如何,除非您希望将其与其他脚本 bundle 在一起。

如果您分配了 Properties.Default.IsEnabledTestingFeatures从 AppSettings 那么你的问题的根源是你如何实现你的属性。

关于bundle - 如何有条件地添加脚本包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21707150/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com