Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何对存储在SQL Server DB表中的登录名使用FormsAuthentication?_C#_Asp.net_Sql_Formsauthentication - Fatal编程技术网

C# 如何对存储在SQL Server DB表中的登录名使用FormsAuthentication?

C# 如何对存储在SQL Server DB表中的登录名使用FormsAuthentication?,c#,asp.net,sql,formsauthentication,C#,Asp.net,Sql,Formsauthentication,我正在ASP.NET(C#)中创建一个新的web应用程序,使用FormsAuthentication进行登录。目前有一个标准的FormsAuthentication设置,与往常一样在web.config中指定用户名和密码,并且这个设置工作得很好。但是, 我想将此登录设置链接到数据库中的SQL Server表。此表存储每个用户的用户帐户信息,包括用户名和密码。基本上,我希望找到一种方法,使下面的代码行能够在这个DB表中查找用户名和密码,而不是像通常那样在web.config中查找用户名和密码: F

我正在ASP.NET(C#)中创建一个新的web应用程序,使用FormsAuthentication进行登录。目前有一个标准的FormsAuthentication设置,与往常一样在web.config中指定用户名和密码,并且这个设置工作得很好。但是,

我想将此登录设置链接到数据库中的SQL Server表。此表存储每个用户的用户帐户信息,包括用户名和密码。基本上,我希望找到一种方法,使下面的代码行能够在这个DB表中查找用户名和密码,而不是像通常那样在web.config中查找用户名和密码:

FormsAuthentication.Authenticate(txt_username.Text,txt_password.Text)

但我不知道该怎么做。 我一直在读关于Membership.ValidateUser的文章,但我仍然找不到如何使用它链接到数据库中users表中的用户名和密码

任何帮助都将不胜感激!
(顺便说一句,这是我的第一篇文章,所以请随时指出我可能犯的任何noob错误)。

您需要实现自定义会员资格提供商

MembershipProvider
是应用程序用于验证用户身份以及处理用户相关功能(更改密码、解锁用户等)的机制。自定义MembershipProvider只不过是扩展
MembershipProvider
抽象类的类。在这里,您将编写自定义逻辑与数据库接口,以执行所需的成员身份操作(验证凭据、创建用户、更改密码等)

请查看本教程:


如果您不熟悉ASP.NET成员资格,这是一个很好的资源。

您需要实现自定义成员资格提供程序

MembershipProvider
是应用程序用于验证用户身份以及处理用户相关功能(更改密码、解锁用户等)的机制。自定义MembershipProvider只不过是扩展
MembershipProvider
抽象类的类。在这里,您将编写自定义逻辑与数据库接口,以执行所需的成员身份操作(验证凭据、创建用户、更改密码等)

请查看本教程:


如果您不熟悉ASP.NET成员身份,这是一个很好的资源。

谢谢,我研究了这两种资源,但最终发现了我的问题:我认为下面的代码行是负责身份验证的代码行:FormsAuthentication.authentication(txt_username.Text,txt_password.Text),现在我意识到这行代码只是验证用户是否存在,如果存在,密码是否与之匹配。现在我知道它实际上并没有将用户登录到该站点。实际登录的行是:FormsAuthentication.RedirectFromLoginPage(txt\u username.Text,true);但非常感谢您的帮助!:)谢谢,我研究了这两个资源,但最终发现了我的问题:我认为下面的代码行是负责身份验证的代码行:FormsAuthentication.Authenticate(txt_username.Text,txt_password.Text)。然而,现在我意识到这行代码只是验证用户是否存在,如果存在,密码是否与它匹配。现在我知道它实际上并没有将用户登录到该站点。实际登录的行是:FormsAuthentication.RedirectFromLoginPage(txt\u username.Text,true);但非常感谢您的帮助!:)