我使用最优秀的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会很方便。
答案 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末尾的查询字符串哈希参数。
正如安德鲁所说,这是一个黑客攻击,但我很高兴在运行集成测试时这样做。
(链接的谷歌集团线程也提出了更优雅的探索途径来实现这一目标。)