Asp.net mvc 3 多行变量的语法

Asp.net mvc 3 多行变量的语法,asp.net-mvc-3,razor,Asp.net Mvc 3,Razor,我不熟悉剃须刀引擎。我试图完成的是设置一个包含css类的局部变量。如果以后有人需要修改,我更希望有一个更可读的格式 实现这一点的正确语法是什么? (我首先尝试myCSS=“…”,然后尝试使用@Html.Raw方法) 我能让它工作的唯一方法就是让一切保持在一条线上 目前我有: @{ var myCSS = @Html.Raw("<style>table {border-collapse: collapse; } ...etc</style>"); } @{var myCS

我不熟悉剃须刀引擎。我试图完成的是设置一个包含css类的局部变量。如果以后有人需要修改,我更希望有一个更可读的格式

实现这一点的正确语法是什么? (我首先尝试myCSS=“…”,然后尝试使用@Html.Raw方法)

我能让它工作的唯一方法就是让一切保持在一条线上

目前我有:

@{ var myCSS = @Html.Raw("<style>table {border-collapse: collapse; } ...etc</style>"); }
@{var myCSS=@Html.Raw(“表{border collapse:collapse;}…etc”);}
我想要更可读的。例如:

@{ var myCss = @Html.Raw("
<style>
   table {border-collapse: collapse; } 
   etc....
</style>
"); }
@{var myCss=@Html.Raw(“
表{边框折叠:折叠;}
等
"); }

无需使用
Html.Raw
,因为您正在定义一个C变量
Html.Raw
应该在需要呈现CSS的地方使用

要保留格式化,可以使用“”。它会抑制特殊字符(如“\”或“新行”),直到遇到下一个双引号

@{
    var myCss = @"
        <style>
            table {
                border-collapse: collapse;
            }

            etc....
        </style>";
}

@Html.Raw(myCss)
@{
var myCss=@”
桌子{
边界塌陷:塌陷;
}
等
";
}
@Html.Raw(myCss)

另一个问题是,为什么在C#变量中需要CSS…

已经开发的页面使用了几个printWindow.document.write语句来构建用于打印的页面。因此,不要使用printWindow.document.write(“”);我想至少让一些东西更具可读性。printWindow.document.write('@myCSS');在这种情况下,
printWindow.document.write('@Html.Raw(myCSS)')应该做这项工作