我有3个表:在实体框架添加新的子记录的父表6
帐户: ID,姓名
用户:标识,ACCOUNTID,名称
UserDetail : Id,UserId,Phone
Entitites:
public partial class Account
{
public Account()
{
this.Users = new HashSet<User>();
}
public int Id{get;set;}
public string Name{get;set;}
public virtual ICollection<User> Users{get;set;}
}
public partial class UserDetail
{
public int Id{get;set;}
public string Phone {get;set;}
public virual User User {get;set;}
}
public partial class User
{
public User()
{
this.Accounts = new HashSet<Account>();
}
public int Id{get;set;}
public virtual ICollection<Account> Accounts {get;set;}
public virtual UserDetail UserDetail{get;set;}
}
正如您所看到的,Account to User是一对多关系,所以我的Account实体拥有Users DbSet。而用户与UserDetail是一对一的关系。
我目前正试图插入一个用户和userdetail记录到现有的帐户。所以,我的代码如下所示:
var newUserDetail = new UserDetail();
newUserDetail.Phone = 014109842;
var newUser = new User();
newUser.Name = "John Smith";
newUser.UserDetail = newUserDetail;
var currentAccount = _dbContext.Accounts.First(a => a.Id == 100);
currentAccount.User.Add(newUser);
_dbContext.SaveChanges();
,我发现了以下错误: “在ReferentialConstraint从属属性映射到一个存储生成的列柱:‘身份证’。”
想法?
如果为帐户,用户和UserDetail提供您的班级定义,您将获得更多帮助。 – 2014-10-09 00:04:19
@EtihwSirhc我现在做了 – amythn04 2014-10-09 07:37:23