ASP默认代码后面没有执行

本文关键字:执行 默认 代码 ASP | 更新日期: 2023-09-27 18:12:39

我有一个LogIn.aspx页面,目前设置为我的项目的起始页。我使用ASP身份验证,并有一个登录按钮,以启用访问应用程序的其余部分。

<asp:Button ID="LoginButton" runat="server" CommandName="Login" Text="Log In" 
            CssClass="button" ValidationGroup="Login1" />

我的应用程序似乎引导登录用户默认。Aspx在项目中并不存在。我现在已经在web.config中设置了以下内容:

<authentication mode="Forms" >
  <forms loginUrl="login.aspx" defaultUrl="~/Secure/Default.aspx"/>      
</authentication>

默认值。Aspx包含以下代码:

public partial class Secure_Default : System.Web.UI.Page
{
        protected void Page_Load(object sender, EventArgs e)
        {
           RoleRedirect();
        }
        public void RoleRedirect()
        {
            if (Boat_Registration.Code.utils.MembershipUtil.IsCurrentUserHarbourMaster())
            {
                Response.Redirect("~/Secure/HarbourMaster/Default.aspx");
            }            
            else
            {
                Response.Redirect("~/Secure/CustomerSummary.aspx");
            }
        }
 }

然而,实际情况是,一旦用户登录,他们将被定向到默认值。Aspx,但是后面的代码没有触发,他们被留在一个空页面上,这个页面应该根据他们的角色将他们重定向到管理员主页或普通用户主页。

谁能告诉我为什么我添加的defaultUrl不执行后面的代码?

ASP默认代码后面没有执行

听起来像错误是在'默认。Aspx的标记页面。检查page指令,特别是"Inherits"属性。应该指向你的代码隐藏文件

AutoEvent wireup是Default中的问题。

设置为AutoEventWireup="false",更改为true解决了这个问题。