我使用的是ASP.NET Core创建的默认身份验证系统,我想知道吗?
如何将ASPNETUsers
表的名称更改为User
?
如何将以下属性添加到表中:public string DisplayName {get; set;}
如何将RemoteAttribute
属性添加到电子邮件属性
如果我有一些属性,那么创建另一个名为Profile的表,与ASPNETUsers表具有一对一的关系是不是一个好主意?
感谢...
答案 0 :(得分:3)
您可以执行以下操作。
1。
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
builder.Entity<ApplicationUser>(entity =>
{
entity.ToTable(name:"User");
});
}
<强> 2 强>
public class ApplicationUser : IdentityUser
{
......................
......................
public string DisplayName {get; set;}
}
3。我建议您将其放在ViewModel
而不是Core model (i.e. ApplicationUser )
上,如下所示。
using Microsoft.AspNet.Mvc;
using System.ComponentModel.DataAnnotations;
public class LoginViewModel
{
[Required]
[EmailAddress]
[Remote("Foo", "Home", ErrorMessage = "Remote validation is working for you")]
public string Email { get; set; }
}
4. 因此,您只有很少的属性,您可以将这些属性保留在ASPNETUsers
表本身中。这很容易维护:)