Вот так выглядит моя модель данных для USER
public class User
{
/// <summary>
/// .cstor
/// </summary>
public User()
{
this.UserDetails = new UserDetails();
}
/// <summary>
/// Gets or sets the Primary key.Identity key
/// </summary>
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[ForeignKey("UserDetails")]
public int UserId { get; set; }
[Required]
[StringLength(150, MinimumLength = 1)]
public string Name { get; set; }
/// <summary>
/// Gets or sets the user details
/// </summary>
[Required]
public virtual UserDetails UserDetails { get; set; }
}
public class UserDetails
{
[Required]
public int UserDetailsId { get; set; }
[Required]
public virtual User User { get; set; }
[StringLength(1000)]
public string Address { get; set; }
[Required]
[StringLength(20, MinimumLength = 8)]
public string PhoneNumber { get; set; }
[StringLength(255, MinimumLength = 3)]
public string Email { get; set; }
[StringLength(255)]
public string Photo { get; set; }
}
У меня есть представление Create (движок бритвы), в котором заполняются свойства User и UserDetails.
Но я не могу создать это, потому что мое состояние модели недействительно, когда я сохраняю, потому что Userdetails.User имеет значение null Насколько я понимаю, это свойство просто для того, чтобы EF знал отношения.
Может кто-нибудь показать мне аккуратный способ выполнения сквозного (сохранение бритвы в DBcontext) сохранения этих связанных объектов?