我是C#/。Net的新手。我正在尝试创建一个登录页面,将管理员定向到该站点的一个页面,将所有其他用户定向到另一个页面。我已经通过aspnet_regsql.exe成功添加了所需的页面,能够从数据库中获取数据,并通过ASP.NET配置后端网站创建用户和文件夹权限。当我创建用户时,我检查了SQL服务器数据库并且它正在工作但是当我尝试登录时没有任何反应。我做了一些研究,并意识到我需要为这个方法添加代码以使其转发到正确的页面,但我不知道从哪里开始。
protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
{
编辑: 感谢您重定向的输入。如何使用数据库验证登录?我正在使用登录控件的标准表。
答案 0 :(得分:2)
Response.Redirect()应该帮助你
答案 1 :(得分:2)
假设您正在使用会员提供商:
if (Membership.GetUser() != null && Page.User.IsInRole("administrator"))
{
//admin user
Response.Redirect("adminarea.html");
}
答案 2 :(得分: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
答案 3 :(得分:1)
把
protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
{
// Validate From DB
//After successful Validation
Response.Redirect("Your Page name");
}