关闭Cassette中的URL重写

时间:2013-01-30 12:31:12

标签: asp.net cassette

我使用最优秀的Cassette来捆绑ASP.NET中的资源。但是,有时候完全关闭URL重写会很方便。我知道有防止缩小或停止捆绑的解决方案,但我希望Cassette HtmlHelper简单地(暂时)发出原始资产URL。

例如,而不是发出:

<script src="/cassette.axd/asset/Scripts/jquery-1.7.2.js?DXiW4rsj-I4m5SsioHU1CzVN9Ec=" type="text/javascript"></script>

Cassette将发出原始内容:

<script src="/scripts/jquery-1.7.2.js" type="text/javascript"></script>

一些背景知识:我正在使用用于集成测试的ASP.NET MVC应用程序的InProcess引导。 &#39; .axd&#39;和盒式磁带重写方面的问题只是需要担心的一件事,所以在某些测试中有效地关闭Cassette会很​​方便。

2 个答案:

答案 0 :(得分:1)

Cassette配置设置中的IsHtmlRewritingEnabled默认为true。将其设置为false。有关详细信息,请参阅here

答案 1 :(得分:1)

I posted the same question on the Cassette Google Group,领导开发人员(Andrew Davey)认为实现这一目标的最简单方法是使用自己的帮助程序包装Cassette HTML Helper方法,删除'/cassette.axd/asset/ '网址的一部分。然后简单地忽略URL末尾的查询字符串哈希参数。

正如安德鲁所说,这是一个黑客攻击,但我很高兴在运行集成测试时这样做。

(链接的谷歌集团线程也提出了更优雅的探索途径来实现这一目标。)