0

我有以下代码。

    <% if (Request.Path.ToLower().Contains("something"))
       {%>
          <%: Html.ActionLink("Something1", "Something1", "Home") %>
       <%}else{%>
           <%: Html.ActionLink("Something2", "Something2", "Home") %>
       <%}%>

我真的需要所有那些打开 <% 和关闭 %> 吗?有没有更简单的方法来写同样的东西?

4

4 回答 4

0
<% var s = Request.Path.ToLower().Contains("something") ? "Something1" : "Something2"; %>
<%: Html.ActionLink(s, s, "Home") %>

或者,在 Razor 中:

@{ var s = Request.Path.ToLower().Contains("something") ? "Something1" : "Something2"; }
@Html.ActionLink(s, s, "Home")
于 2012-04-23T22:36:08.900 回答
0

一种更简单的方法:Razor 语法

@if (Request.Path.ToLower().Contains("something"))
{
    Html.ActionLink("Something1", "Something1", "Home");
}
else
{
    Html.ActionLink("Something2", "Something2", "Home");
}

但是您可能需要升级。

于 2012-04-23T22:29:46.273 回答
0

您可以查看 Razor 语法,尽管您可能需要安装一些升级。

这将产生如下代码:

@if (Request.Path.ToLower().Contains("something"))
{
    Html.ActionLink("Something1", "Something1", "Home");
}
else
{
    Html.ActionLink("Something2", "Something2", "Home");
}

http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx

于 2012-04-23T22:31:54.727 回答
0

好吧,您可以使用 Razor 视图/cshtml :)

@if(Request.Path.ToLower().Contains("something"))
{
    <div> @Html.ActionLink("Something1", "Something1", "Home") </div>
}else {
    <div> @Html.ActionLink("Something2", "Something2", "Home") </div>
}
于 2012-04-23T22:32:03.400 回答