使用asp Control总是更好吗?

时间:2010-07-06 11:36:04

标签: asp.net

我很困惑哪一个更好。

ASPX:

<asp:HyperLink ID="HyperLink1" runat="server">HyperLink</asp:HyperLink>

代码:

String url = "http://stackoverflow.com";
if(IsShow)
{
    HyperLink1.Visible = true;
    HyperLink1.NavigateUrl = url;
}

,第二个选项是:

<%if(IsShow){%>
<a href="<%=url%>">HyperLink</a>
<%}%>

这两种方式完全相同。

哪一个更好,为什么?

1 个答案:

答案 0 :(得分:4)

主要是为了可读性,第一个是首选(尽管您粘贴的代码无效 - 您需要将其包装在脚本标记中并指定函数(即Page_Load)来执行您的逻辑。

其次,第二种方法在Page_PreRender上执行,因此您在页面生命周期的后期执行逻辑会受到限制。在ASP.NET MVC中编程时会注意到这种方法(因为没有代码隐藏模型)。

使用Web窗体中的第一种方法,ASP.NET MVC中的第二种方法。