我们有以下 AddUser 方法,它使用 EF 向数据库添加新记录:
public User AddUser(User user)
{
using (var context = DataObjectFactory.CreateContext())
{
var userEntity = Mapper.Map(user);
context.AddObject("UserEntities", userEntity);
context.SaveChanges();
return Mapper.Map(userEntity);
}
}
我们的用户类型是这样的:
public class User
{
public string FirstName { get; set; }
public string LastName { get; set; }
public Customer Customer { get; set; }
}
我们有一个 Customer 表和一个 User 表,在 User 表中我们有 customerid 作为外键。
在 USER 表中,我们有 Firstname、Lastname 和 CustomerId 字段,我们从用户那里获取 firstname、lastname 和 customerid(客户的下拉列表)详细信息,使用我们从用户那里获得的 customerid 创建 Customer 对象并将所有这些传递给AddUser
方法,但是会发生什么情况是用户被插入到数据库中,并且新的客户也被插入到客户的表中(使用新的客户 ID),有什么办法可以阻止这种情况?
谢谢