多行变量的语法

Syntax for multiline variables

我是 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>
"); }

无需使用 Html.Raw,因为您正在定义 C# 变量。 Html.Raw 应该用在需要渲染 CSS 的地方。

要保留格式,您可以使用“verbatim string literal”。在遇到下一个双引号之前,它会抑制特殊字符(例如“\”或 'new line')。

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

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

@Html.Raw(myCss)

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