User
테이블과 UserSettings
테이블간에 일대일 관계를 설정하려고합니다.HasRequired가 작동하지 않는 이유는 무엇입니까?
'HasRequired'관계를 지정 했음에도 불구하고 설정없이 사용자를 삽입 할 수 있습니다. 내가 어디로 잘못 가고 있니?
public class ApplicationUser : IdentityUser
{
public ApplicationUser()
{
// Settings = new UserSettings();
}
public string EmailAddress { get; set; }
public virtual UserSettings Settings { get; set; }
}
public class UserSettings
{
[Key]
public string ApplicationUserId { get; set; }
public virtual ApplicationUser ApplicationUser { get; set; }
}
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<ApplicationUser>().HasRequired(t => t.Settings).WithRequiredPrincipal(t => t.User);
}
}
'OnModelCreating()'메서드는 어디에서 구현 했습니까? –
"삽입 할 수 있음"이라고 말하면 정확히 무엇을 의미합니까? 귀하의 코드는 무엇이며, 어떤 일이 일어나고, 대신 무엇을 기대합니까? –
앱의 파생 DbContext에서'OnModelCreating()'을 재정의하고 있습니까? 그렇지 않다면 거기에서해야합니다. –