Visual studio 2010 使用Chirpy和Razor语法

Visual studio 2010 使用Chirpy和Razor语法,visual-studio-2010,razor,minify,chirpy,Visual Studio 2010,Razor,Minify,Chirpy,我刚刚开始使用Chirpy(v2.01和v2.03-),虽然它可以很好地处理.js和.css文件,但在VS2010中使用Razor语法有点麻烦 基本上,我有一个Razor文件,如下所示: @{ ViewBag.Title = "Blah"} @section Styles{ ... } @section Scripts{ ... } html 在不同的地方,我使用@foreach循环,并使用“@:”或通知什么是代码,什么是要输出的 不管怎么说,Chirpy给了我上百个错误。它们都是: E

我刚刚开始使用Chirpy(v2.01和v2.03-),虽然它可以很好地处理.js和.css文件,但在VS2010中使用Razor语法有点麻烦

基本上,我有一个Razor文件,如下所示:

@{ ViewBag.Title = "Blah"}

@section Styles{ ... }

@section Scripts{ ... }

html
在不同的地方,我使用@foreach循环,并使用“@:”或通知什么是代码,什么是要输出的

不管怎么说,Chirpy给了我上百个错误。它们都是:

Error 60 "missing name after .@" 

Error 62 "syntax error" 

Error 63 "invalid property id" 

Error 67 "missing ; before statement" 

Error 68 "illegally formed XML syntax" 
cshtml文件实际上没有问题,因为它们在firefox/chrome中运行得非常完美,没有任何错误

有人能帮忙吗?如果可以的话,我会喜欢一些内嵌的js缩小

我也在codeplex网站上发布了这个查询(如果我得到回复,我会报告):

如果所有这些都失败了,我将跳转到代码中(它是开源的)。有谁能提供一个比这里更好的起点:

干杯,
Daz。

从代码中我可以看到,Chirpy正在使用其“常规”转换引擎来缩小CSS和JS

这意味着缩小引擎不知道剃须刀。因此,您不能使用razor代码,这可能会被缩小引擎错误解释。这几乎排除了一切

实际上,这很有意义,因为minifier只能在扩展代码上工作,类似这样的代码,不能被“缩小”(对于.less/css也是如此):


@对于(int i=0;i<10:i++){
变量k@i=@(i*i);
}
警报(k@(变量_from_razor));;
   <script>
        @for(int i = 0; i < 10: i++) {
            var k@i = @(i * i);
        }
        alert(k@(variable_from_razor));
   </script>