我的视图

时间:2017-03-11 18:18:51

标签: c# asp.net-mvc asp.net-mvc-4

我是mvc和Razor的新手,需要你的帮助

任何人都可以在我的视图中看到为什么我的2行Razor代码会出错。

    <div class=@( if(true){ "divred" } )> Iam in if the block</div>
 如果挡了我         Iam in if block 4 这是我的整个代码     @ {         string divClass =&#34; enable&#34 ;;         string blue =&#34; divred&#34 ;;     }                                 指数                      .divred {颜色:红;}             .divblue {颜色:蓝;}                                           如果挡了我      如果挡了我
        <div @(divClass == "enable" ? "class=@blue" : "class=divblue" )>Iam in if the block 4</div>


    </div>
</body>
</html>

如果有人可以详细解释,我会很高兴的。正如我所说,我是mvc的新手

1 个答案:

答案 0 :(得分:1)

您可以传递一个C#表达式,该表达式最终根据@()代码块中的if条件返回字符串值。

这应该有用。

<div class='@(true?Html.Raw("divred"):Html.Raw("divblue"))'> Iam in if the block</div>

此处Html.Raw("divred")返回字符串&#34; divred&#34;因为它(没有编码)

您可以使用任何返回布尔值的C#语句替换表达式中的true