Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.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# ASP.Net标识-无法使用密码登录_C#_Asp.net_Asp.net Identity_Asp.net Membership_Membership - Fatal编程技术网

C# ASP.Net标识-无法使用密码登录

C# ASP.Net标识-无法使用密码登录,c#,asp.net,asp.net-identity,asp.net-membership,membership,C#,Asp.net,Asp.net Identity,Asp.net Membership,Membership,ASP.Net标识有问题。我通过以下方式创建用户: var manager = new UserManager<IdentityUser>(userStore); manager.UserValidator = new UserValidator<IdentityUser>(manager) { AllowOnlyAlphanumericUserNames = fa

ASP.Net标识有问题。我通过以下方式创建用户:

 var manager = new UserManager<IdentityUser>(userStore);

                manager.UserValidator = new UserValidator<IdentityUser>(manager)
                {
                    AllowOnlyAlphanumericUserNames = false
                };

                manager.PasswordValidator = new PasswordValidator
                {
                    RequiredLength = 6,
                    RequireDigit = true,
                    RequireLowercase = true,
                    RequireUppercase = true,
                };

                 var user = new IdentityUser() { UserName = email.Text, Email = email.Text };                    
                 IdentityResult result = manager.Create(user, Password1.Text);
var-manager=newusermanager(userStore);
manager.UserValidator=新的UserValidator(管理器)
{
AllowOnlyAlphanumericUserNames=false
};
manager.PasswordValidator=新密码验证器
{
所需长度=6,
RequireDigit=true,
RequireLowercase=true,
RequireUppercase=true,
};
var user=new IdentityUser(){UserName=email.Text,email=email.Text};
IdentityResult result=manager.Create(用户,密码1.Text);
然后将用户添加到数据库中。当我尝试使用该用户登录时,它总是返回“密码不正确”,即使密码与创建帐户时使用的密码相同

我使用以下方式登录:

var userStore = new UserStore<IdentityUser>();
var userManager = new UserManager<IdentityUser>(userStore);


        userManager.UserValidator = new UserValidator<IdentityUser>(userManager)
        {
            AllowOnlyAlphanumericUserNames = false
        };

        var user = userManager.Find(email.Text, Password.Text);

        if (user != null)
var userStore=new userStore();
var userManager=newusermanager(userStore);
userManager.UserValidator=新的UserValidator(userManager)
{
AllowOnlyAlphanumericUserNames=false
};
var user=userManager.Find(email.Text、Password.Text);
如果(用户!=null)
使用SQL事件探查器,我可以看到它正确地查找了用户,当我在SSMS中运行SQL时,我可以看到行返回良好


我不确定当从数据库返回的实际记录计数为1时,userManager.Find为什么返回null?

使用
SignInManager

SignInManager<IdentityUser> _signInManager; // Inject 

var result = await _signInManager.PasswordSignInAsync(email.Text, Password.Text, true, lockoutOnFailure: true);
SignInManager\u SignInManager;//注射
var result=await _signInManager.PasswordSignInAsync(email.Text,Password.Text,true,lockoutOnFailure:true);

这是MVC应用程序吗?我认为您应该使用SignInManager类。如果探查器显示返回数据的查询,则哈希算法没有问题。添加您的经理
创建
查找
方法,以便reproduced@Juan这是一个ASP.Net Web表单项目。@bradbury9我已经添加了完整的代码。两个用户管理器都相同,只是登录没有密码验证程序。