如何防止引号在 C# 中输出为 html 转义码

How to prevent quotes being output as html escape codes in c#

我不确定这是不是 c# 本身,但我正在处理 .cshtml 文件(在 episerver 中)。

我正在设置一个包含引号的字符串变量。这是一个简化版本:

@{
    var backgroundcontent = "class='background' data-transition='mytransition'";
    if (Model.CurrentBlock.Photo) {
        backgroundcontent = "class='photo' data-transition='none'";
    }
  }

当它在页面中呈现时,我得到 ' 如果我在标签内呈现它就很棒,但当我需要它在标签本身时就不行了。

我是否坚持使用 html 引号(并且必须做一些更复杂的事情,比如为属性设置两个变量),或者有没有办法覆盖它们?

试试 Html.Raw(backgroundcontent);,这应该可以防止默认字符串转义。