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

Kat*_*rne 0 c# episerver

我实际上并不确定这是c#本身,但我正在使用.cshtml文件(在episerver中).

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

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

当它在页面中呈现时,'如果我在标记内部渲染它,那么我会得到很好的效果,但是当我在标记本身中需要它时,我就会得到它.

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

Ole*_*kyi 6

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