ASP.NET控件呈现

时间:2017-12-06 08:05:03

标签: asp.net

我想知道以下代码示例中使用的HyperLink控件如何呈现为显示welcome.Text变量中包含的文本的html。

注册页面链接也是如此。

由于我假设每次发出页面请求时都不会运行此脚本,我也想知道这个脚本在示例应用程序中运行的情况。

<script language="C#" runat="server">

    void Page_Load(object sender, EventArgs e) {

        if (User.Identity.IsAuthenticated) {
            welcome.Text = "Welcome " + User.Identity.Name;
        }
        else {
            // not signed in yet, add a link to signin page
            welcome.Text = "please sign in!";
            welcome.NavigateUrl = "signin.aspx";
        }
    }

</script>

<asp:HyperLink id="welcome" runat="server" maintainstate="false">
</asp:HyperLink>

修改

更准确地说,HyperLink控件如何知道如何呈现变量welcome.Text?

是否在声明控件时,ControlName.Text(如果声明)始终呈现?

1 个答案:

答案 0 :(得分:1)

每次请求页面时都应运行Page_Load。对于未经身份验证的用户,您的HyperLink将呈现为<a href="signin.aspx">please sign in!</a>,对于经过身份验证的登录,您的HyperLink将呈现为<a href="">Welcome LoginUserName</a>。 这是你在寻找什么。如果没有,请描述更多细节。