首页 文章

实体框架添加而忽略属性

提问于
浏览
0

这是我的代码的相关部分:

public partial class Users
{
   public string Name { get; set; }
   public Guid RoleId { get; set; }
   public virtual Role UserRole {get; set; }
}

public partial class Role
{
   public string RoleName {get; set; }
   public Guid RoleId {get; set; }
}

RoleId是Roles表中的主键,它具有RoleName和RoleId . 用户具有Name和RoleId .

设置用户后,我尝试添加它们

this.Entities.Users.Add(user);
this.Entities.SaveChanges();

但是,我在Roles表中得到了违反PRIMARY KEY类型的DbUpdateException . 从我所看到的,它试图插入附加到用户的角色,这显然会导致该问题 .

我尝试在UserRole上放置一个[NotMapped]属性,但是这并没有解决问题 .

EF生成了这两个类 .

我是否需要进行某种模式更改以使其不包含UserRole和重构器以在用户中使用RoleId并以这种方式引用所有内容,或者是否还有其他我缺少的内容?

编辑:一个浅的副本 grab 了所需的信息,它现在有效 .

1 回答

  • 0

    您可以在EF类设计器的工具窗口中取消映射该属性 .

相关问题