-1

我是 C#/.Net 的新手。我正在尝试创建一个登录页面,将管理员引导到站点的一个页面,并将所有其他用户引导到另一个页面。我已经通过 aspnet_regsql.exe 成功添加了所需的页面,能够从数据库中获取数据并通过 ASP.NET 配置后端网站创建用户和文件夹权限。当我创建用户时,我检查了 SQL 服务器数据库并且它正在工作,但是当我尝试登录时没有任何反应。我做了一些研究并意识到我需要向这个方法添加代码才能让它转发到正确的页面,但我不知道从哪里开始。

protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)

{

编辑:感谢有关重定向的输入。您如何使用数据库验证登录?我正在使用与登录控件一起使用的标准表。

4

4 回答 4

2

Response.Redirect() 应该可以帮助您

于 2013-06-21T14:40:38.780 回答
2

首先,您必须对用户进行身份验证,然后将用户重定向到可供他使用的页面。

If (authentication success) 
{ 
// iF you want to parse user id of the user to the page then you can use query string 
// like this " ~/home.page?id=129" 

Response.Redirect("~/Home.page") 
} 

如果您使用自定义数据表,那么您可以编写一个过程来验证用户,我使用自定义数据表来保存成员并使用 SQL 过程进行验证,如下所示:

 Create Procedure [dbo].[Authenticate]
    (
    @Email varchar(50), 
    @Password varchar(50)    
    ) 
    As

    Declare @@ID int 


    Set @@ID = (select ID from users where Email = @Email)

    if exists (select * from [dbo].[Users] where Email = @Email and [Password] = @Password ) 
    select 'True' as IsValid , @@ID as ID
    else 
    select 'False' as Isvalid , 0 as ID

    return
于 2013-06-21T15:01:18.923 回答
2

假设您使用的是会员提供者:

if (Membership.GetUser() != null && Page.User.IsInRole("administrator"))
{
   //admin user
   Response.Redirect("adminarea.html");
}
于 2013-06-21T14:43:13.257 回答
1

protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)

{

// Validate From DB
//After successful Validation

Response.Redirect("Your Page name");

}
于 2013-06-21T14:42:12.983 回答