当我尝试使用Web Api控制器创建用户(具有重复的用户名)时,我已将ASP.NET成员资格提供程序迁移到ASP.NET身份,迁移后我收到以下错误。 IdentityResult没有捕获此错误。
“message”:“System.Data.SqlClient.SqlException(0x80131904):无效 列名'UserId'。\ r \ n无效列名'UserId'。\ r \ n at System.Data.SqlClient.SqlCommand.b__24(任务1 结果)\ r \ n at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke(个)\ r \ n 在System.Threading.Tasks.Task.Execute()\ r \ n ---堆栈跟踪结束 从之前的位置抛出异常--- \ r \ n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务 任务)\ r \ n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务 任务)\ r \ n at System.Runtime.CompilerServices.TaskAwaiter 1.GetResult()\ r \ n at System.Data.Entity.Utilities.TaskExtensions.CultureAwaiter1.GetResult(个)\ r \ n 在 System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.d__c.MoveNext(个)\ r \ nClientConnectionId:95d07c45-7f78-448c-9392-09999eb8c42d“
我的代码。
var user1 = new ApplicationUser
{
Id = Guid.NewGuid().ToString(),
UserName = ud.Username,
Email = ud.Email,
IsApproved = false,
ApplicationId = new Guid("4600317a-8e7e-476a-86f1-8409a5ed60b7"),
LoweredUserName = ud.Username.ToLower(),
LastActivityDate = Convert.ToDateTime("1754-01-01 00:00:00.0000000"),
CreateDate = DateTime.Now,
IsLockedOut = false,
LoweredEmail = ud.Email.ToLower(),
LastLoginDate = Convert.ToDateTime("1754-01-01 00:00:00.0000000")
};
var result = await userManager.CreateAsync(user1, ud.Password);