我曾在/Public/javascripts/jquery1.1js
中拥有.js文件。从文件夹中删除文件时会触发Cassette.AssetReferenceException
一切都工作完美,但后来我需要从我的项目中删除此文件,所以我刚刚从Visual Studio中的解决方案中删除它。
现在,当我访问我的申请,我得到:在
引用错误 “〜/公共/ Java脚本/ jquery.unobtrusive-ajax.js”, 1号线无法找到“〜/公共/ Java脚本/ jQuery的1.5.1.js”。参考 错误“〜/ Public/javascripts/jquery.validate.unobtrusive.js”,行 1.无法找到“〜/ Public/javascripts/jquery-1.5.1.js”。
描述:在执行 当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关该错误的更多信息以及源代码的位置。
异常详细信息:Cassette.AssetReferenceException:引用错误 在 “〜/公共/ Java脚本/ jquery.unobtrusive-ajax.js”,第1行无法找到 “〜/公共/ Java脚本/ jQuery的1.5.1。 JS”。 参考错误“〜/ Public/javascripts/jquery.validate.unobtrusive.js”,第1行。不能 找到“〜/ Public/javascripts/jquery-1.5.1.js”。
这里有一个堆栈跟踪:
[AssetReferenceException: Reference error in "~/Public/javascripts/jquery.unobtrusive-ajax.js", line 1. Cannot find "~/Public/javascripts/jquery-1.5.1.js".
Reference error in "~/Public/javascripts/jquery.validate.unobtrusive.js", line 1. Cannot find "~/Public/javascripts/jquery-1.5.1.js".]
Cassette.BundleContainer.ValidateAssetReferences() +387
Cassette.BundleContainer..ctor(IEnumerable`1 bundles) +41
当然,我知道为什么发生这种情况,磁带仍然试图找到被删除的文件,但我不知道如何告诉录音带:“ Hey, this file is no longer relevant. Scan the folder again and rebuild a list of files you need to work with.
“
但我只是不知道如何做到这一点。
documentation没有提到这一点,只是意味着它应该为我自动做到这一点。
这里是我的配置类:
using Cassette.Configuration;
using Cassette.Scripts;
using Cassette.Stylesheets;
namespace XXX.WebUI
{
/// <summary>
/// Configures the Cassette asset modules for the web application.
/// </summary>
public class CassetteConfiguration : ICassetteConfiguration
{
public void Configure(BundleCollection bundles, CassetteSettings settings)
{
bundles.AddPerIndividualFile<ScriptBundle>("Public/javascripts/");
bundles.AddPerIndividualFile<StylesheetBundle>("Public/stylesheets/");
}
}
}
在我_Layout.cshtml文件:
@{
Bundles.Reference("Public/javascripts/site.js");
Bundles.Reference("Public/javascripts/jquery.validate.unobtrusive.js");
Bundles.Reference("Public/stylesheets/site.less");
}
<!DOCTYPE html>
...
<head>
<title>@ViewBag.Title</title>
@Bundles.RenderStylesheets()
...
@Bundles.RenderScripts()
</body>