我是Razor引擎的新手。我想要完成的是设置一个包含css类的局部变量。如果以后有人需要修改它,我希望以更易读的格式使用它。
完成此操作的正确语法是什么? (我首先尝试了myCSS =" ...",然后我尝试使用@ Html.Raw方法)
我能让它发挥作用的唯一方法是将所有内容保持在一条线上。
目前我有:
@{ var myCSS = @Html.Raw("<style>table {border-collapse: collapse; } ...etc</style>"); }
我想要更具可读性的东西。如:
@{ var myCss = @Html.Raw("
<style>
table {border-collapse: collapse; }
etc....
</style>
"); }
答案 0 :(得分:2)
无需使用Html.Raw
,因为您正在定义C#变量。应该在需要渲染CSS的地方使用Html.Raw
。
要保留格式化,您可以使用&#39; verbatim string literal&#39;。它会抑制特殊字符(例如&#39; \&#39;或者#39;新行&#39;),直到遇到下一个双引号。
@{
var myCss = @"
<style>
table {
border-collapse: collapse;
}
etc....
</style>";
}
@Html.Raw(myCss)
另一个问题是,为什么在C#变量中需要CSS ...