我有一个简单的方法,我使用实体框架将给定的客户信息保存到数据库中:
public Customer AddCustomer(Customer customer)
{
using (var context = DataObjectFactory.CreateContext())
{
context.AddObject("CustomerEntities", Mapper.Map(customer));
context.SaveChanges();
return customer;
}
}
客户类型很简单,它由客户的 ID 和名称组成,所以当我们要保存客户时,我只需将客户对象传递给 AddCustomer 方法,此时 ID 为空,名称字段包含我的名称想保存到数据库。
这工作正常,名称被插入到数据库中,但是我想要做的是取回保存的客户 ID 并返回到调用函数,有没有办法实现这一点?
编辑:
这是使用的 Mapper 方法:
internal static class Mapper
{
internal static IList<Customer> Map(IEnumerable<CustomerEntity> entity)
{
return entity.Select(Map).ToList();
}
internal static Customer Map(CustomerEntity entity)
{
return new Customer
{
CustomerId = entity.CustomerId,
Name = entity.Name
};
}
internal static CustomerEntity Map(Customer customer)
{
return new CustomerEntity
{
CustomerId = customer.CustomerId,
Name = customer.Name
};
}
}
谢谢