使用WebForms视图引擎,我通常将三元运算符用于非常简单的条件,特别是在HTML属性中。例如:
上面的代码将给出
auth
或
anon
取决于用户是否经过身份验证。
@if(User.Identity.IsAuthenticated) { My link here }
else { My link here }
可怕的
.
我想做点什么
喜欢
但我很难理解剃须刀是怎么做到的:
更新:
同时,我创建了这个HtmlHelper:
public static MvcHtmlString Conditional(this HtmlHelper html, Boolean condition, String ifTrue, String ifFalse)
{
return MvcHtmlString.Create(condition ? ifTrue : ifFalse);
}
从剃须刀上可以这样称呼:
不过,我还是希望有一种方法可以使用三元运算符,而不必回头用扩展方法包装它。