Entity Framework                
            Ограничения модели
        
        
            
    Поиск…
Отношение «один ко многим»
UserType принадлежит многим пользователям <-> У пользователей есть один UserType
Одностороннее навигационное свойство с требуемым
public class UserType
{
    public int UserTypeId {get; set;}
}
public class User
{
    public int UserId {get; set;}
    public int UserTypeId {get; set;}
    public virtual UserType UserType {get; set;}
}
Entity<User>().HasRequired(u => u.UserType).WithMany().HasForeignKey(u => u.UserTypeId);
  Одностороннее свойство навигации с дополнительным (внешний ключ должен быть Nullable ) 
public class UserType
{
    public int UserTypeId {get; set;}
}
public class User
{
    public int UserId {get; set;}
    public int? UserTypeId {get; set;}
    public virtual UserType UserType {get; set;}
}
Entity<User>().HasOptional(u => u.UserType).WithMany().HasForeignKey(u => u.UserTypeId);
 Двухстороннее свойство навигации с (обязательно / необязательно изменяет свойство внешнего ключа по мере необходимости)
public class UserType
{
    public int UserTypeId {get; set;}
    public virtual ICollection<User> Users {get; set;}
}
public class User
{
    public int UserId {get; set;}
    public int UserTypeId {get; set;}
    public virtual UserType UserType {get; set;}
}
 необходимые
Entity<User>().HasRequired(u => u.UserType).WithMany(ut => ut.Users).HasForeignKey(u => u.UserTypeId);
 Необязательный
Entity<User>().HasOptional(u => u.UserType).WithMany(ut => ut.Users).HasForeignKey(u => u.UserTypeId);
    
    
    
    
    Modified text is an extract of the original Stack Overflow Documentation
        Лицензировано согласно CC BY-SA 3.0
        Не связан с Stack Overflow