我试图将AspNetUsers中的标准Id从nvarchar实现为int.我已经设法让这方面工作.但是我的问题是当我尝试登录时,我不断收到UserManager类的错误.
我的代码如下:
public class UserManager : UserManager<ApplicationUser,int> { public UserManager(IUserStore<ApplicationUser,int> store) : base(store) { }
if (IsValid) { // Validate the user password var manager = Context.GetOwinContext().GetUserManager<UserManager>(); var user = manager.Find(UserName.Text,Password.Text); //This line throws the error if (user != null) { IdentityHelper.SignIn(manager,user,isPersistent: false); Response.Redirect("~/Home.aspx"); } else { FailureText.Text = "Invalid username or password."; ErrorMessage.Visible = true; } }
我不断得到的错误是System.ArgumentNullException:值不能为null.
参数名称:manager.有其他人遇到这个问题吗?在此先感谢您的帮助
堆栈跟踪
[ArgumentNullException: Value cannot be null. Parameter name: manager] Microsoft.AspNet.Identity.UserManagerExtensions.Find(UserManager`2 manager,String userName,String password) +221 Account_Login.LogIn(Object sender,EventArgs e) in Login.aspx.cs:17 System.Web.UI.WebControls.Button.OnClick(EventArgs e) +9628026 System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +103 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl,String eventArgument) +13 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35 System.Web.UI.<ProcessRequestMainAsync>d__14.MoveNext() +5226