Umbraco切换到https并在登录时调用事件后面的代码

时间:2011-02-16 10:55:13

标签: https code-behind umbraco

当用户点击按钮时,请使用以下代码将请求从“http”切换为“https”。这是为了在将用户/密码信息发送到服务器之前保护它们。在服务器中,应调用与按钮关联的后面的代码但不执行此操作。在不在Umbraco下的页面上,此代码可以正常工作。

控制:

<asp:ImageButton ID="btnLogin" runat="server" OnClick="btnLogin_Click" ... />

代码背后:

protected void Page_Load(object sender, EventArgs e)
{
    PostBackOptions pbOptions = new PostBackOptions(btnLogin);
    pbOptions.ActionUrl = Request.Url.ToString().Replace("http://", "https://");
    btnLogin.Attributes.Add("onclick", "this.disabled = true; + Page.ClientScript.GetPostBackEventReference(pbOptions) + ";");
}

protected void btnLogin_Click(object sender, ImageClickEventArgs e)
{
   want to execute that code
}

如果将此代码放在Umbraco页面中,当单击登录按钮时,请求将更改为“https”,页面将发布到服务器,但不会调用btnLogin_Click事件。

是否需要改变才能在Umbraco中完成这项工作?有没有人知道解决方案/解决方法让'btnLogin_Click'被执行?或者任何我可以找到问题的想法?

由于

1 个答案:

答案 0 :(得分:0)

您是否尝试过添加Page_Load:

btnLogin_Click += new ImageClickEventHandler(btnLogin_Click);

您可能需要添加此项,因为除非您在usercontrol / masterpage声明中指定了AutoEventWireup =“true”,否则它不会在回发时自动触发。

HTH,

本杰明