MVC 4捆绑脚本不反映我对脚本文件的更改

时间:2013-06-13 14:42:31

标签: asp.net-mvc bundle

我在.NET 4.0中有一个MVC 4应用程序。我的网络托管服务提供商(网络解决方案)设置了虚拟目录,所以我不能使用默认的捆绑行为(我认为)。

在我的_Layout视图中,我有这一行:

@Scripts.Render("~/bundles/dd-d2")

在BundleConfig.cs中我有

bundles.Add(new ScriptBundle("~/bundles/dd-d2").Include(
                    "~/Scripts/dd-d2.js"));

当我在visual studio中运行时,一切正常。但是当我上传到我的网络托管时,找不到该文件,因为它将虚拟文件夹附加到捆绑路径前面。 而不是/bundles/dd-d2?v=BlahBlah,我得到/ROOT_FOLDER/bundles/dd-d2?v=BlahBlah

我通过将此问题添加到_Layout文件

中的行来解决此问题
@Scripts.Render(Url.Content("~/bundles/dd-d2"))

Url.Content助手将虚拟路径转换为应用程序绝对路径,然后找到我的捆绑脚本文件。

现在,我遇到的问题是,如果我对javascript文件进行了更改,它不会反映在输出的捆绑脚本文件中。即使我将其上传到我的虚拟主机,它也始终包含旧信息。这个文件缓存在某个地方吗?有没有更好的方法呢?我想通过使用捆绑来利用我的脚本文件的缩小。

如果我这样做,它确实有用

<script src="@Url.Content("~/Scripts/dd-d2.js")" type="text/javascript"></script>

但是我的剧本并没有缩小。

0 个答案:

没有答案