保存相关条目'如果它不存在
本文关键字:如果 不存在 保存 | 更新日期: 2023-09-27 18:04:01
这看起来很简单,但是我不知道该怎么做。我想保留一份员工职位名称的清单。因此,在输入员工时,我应该能够从职位列表中进行选择,或者简单地输入一个新职位。最后,我当然应该只在位置表中存储位置的ID。
表应该是这样的
Public Class Position {
public int ID {get; set;}
public string Name {get;set;}
}
Public Class Employee {
public int ID {get; set;}
public string LastName {get;set;}
:
:
public int PositionID {get;set}
}
我认为有一个提前输入的函数,它在我键入时查找现有条目,如果没有找到匹配,我只需将新职位发布到职位表中,并以某种方式获得新创建的ID,并将其存储在员工记录中。这可以做到吗?具体来说,是否有一种方法可以返回新创建记录的键?
嗯,我可能已经向自己解释了一个解决方案——这是一般的做法吗?
谢谢:)
我同意user1987322的观点,这可能不是最好的解决方案,但无论如何:
如果您使用实体框架,您只需将一个实体与相关实体相关联。对于你的模型,你可以这样做:
using(var context = new EntityContext())
{
Employee emp = new Employee()
{
LastName = lastName,
Position = new Position { Name = name }
};
context.Employees.AddObject(emp);
context.SaveChanges();
}
新的Position实体与新的Employee一起被引入到上下文中,并且由框架处理关联修复。