如何在剃刀中使用三元运算符(特别是在HTML属性上)?
借助WebForms视图引擎,我通常将三元运算符用于非常简单的条件,尤其是在HTML属性中。例如: <a class="<%=User.Identity.IsAuthenticated ? "auth" : "anon" %>">My link here</a> 上面的代码将为<a>标签提供auth或的类,anon具体取决于用户是否通过身份验证。 Razor视图引擎的等效语法是什么?因为Razor要求HTML标签“知道”何时跳入和跳出代码和标记,所以我目前坚持以下几点: @if(User.Identity.IsAuthenticated) { <a class="auth">My link here</a> } else { <a class="anon">My link here</a> } 坦率地说,这是可怕的。 我很想做一些喜欢这一点,但我在努力了解如何在剃刀: <a class="@=User.Identity.IsAuthenticated ? "auth" : "anon";">My link here</a> - 更新: 在此期间,我创建了以下HtmlHelper: public static MvcHtmlString Conditional(this HtmlHelper html, Boolean condition, String ifTrue, String …