[英]ASP.NET login form authentication without login control
我正在使用ASP.NET成员资格,并在注册页面上尝试登录而没有登录控件。
当用户单击注册按钮时,控件将转到redirect.aspx页面。 但在该页面中,当我试图重定向到成员主页时,它抛出以下错误。
错误 -
Unable to evaluate expression because the code is optimized or a native frame
is on top of the call stack.
Web.config -
<authentication mode="Forms">
<forms name=".SSOAuth" loginUrl="login.aspx" defaultUrl="Redirect.aspx"
protection="Validation" timeout="30000"/>
</authentication>
注册页面代码 -
protected void btnRegister_Click(object sender, EventArgs e)
{
MembershipUser userMemb = Membership.CreateUser(
txtemail.Text.Replace("'", "''").ToString(),
txtPassword.Text.Replace("'", "''").ToString(),
txtemail.Text.ToString());
Roles.AddUserToRole(txtemail.Text.ToString(), "Member");
FormsAuthentication.RedirectFromLoginPage(txtemail.Text.Trim(), false);
}
Redirect.aspx.cs代码 -
try
{
if (User.IsInRole("Member"))
{
string UserName = User.Identity.Name;
Response.Redirect("~/Member/MembeHome.aspx");
}
}
catch(Exception ex) {}
阅读本文档(问题和解决方案) 如果使用Response.End,Response.Redirect或Server.Transfer,则会发生ThreadAbortException
使用Response.Redirect(url,false)
Response.Redirect("~/Member/MembeHome.aspx",false);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.