考虑以下代码:
@{
if ((string) ViewContext.RouteData.DataTokens["area"] == "Guest"){
<text>areaNav_link--selected</text>
}
}
我该如何删除 if 语句?
最佳答案
我更喜欢使用自定义 html 帮助程序来删除逻辑。
例如,您可以按如下方式调用它:
@Html.WelcomeText()
可以将逻辑移至助手中,如下所示:
public static MvcHtmlString WelcomeText(this HtmlHelper htmlHelper)
{
var text = string.Empty;
var areaName = ViewContext.RouteData.Values["area"].ToString();
if (areaName == "Guest")
{
text = "Hello Guest";
}
return new MvcHtmlString(text);
}
这样您就可以通过一行 Razor 代码在整个网站中重复使用它。
另一种方法是创建 TagHelper .
关于c# - 在 asp.net MVC6 View 中删除 if 语句的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34853612/