我尝试保存表单记录,并从客户端获取实体,但每次都获取PersonalId = 0,这将是重复的主键错误。
我怎么才能修复它呢?
public ActionResult SavePersonal(PersonalViewModel model)
{
try
{
StorageSystemEntities1 db = new StorageSystemEntities1();
Personal personal = new Personal();
personal.PName = model.PName;
personal.PLastname = model.PLastname;
personal.PStatus = model.PStatus;
personal.ShopId = model.ShopId;
personal.PPassword = model.PPassword;
personal.GenderID = model.GenderID;
personal.DOB = model.DOB;
personal.Email = model.Email;
personal.JobStartDate = model.JobStartDate;
personal.PAuthorisation = model.PAuthorisation;
personal.Phone = model.Phone;
db.Personal.Add(personal);
db.SaveChanges();
int latestPersonalId = personal.PersonalID;
}
catch (Exception ex)
{
throw ex;
}
return RedirectToAction("_AddPersonal");
}发布于 2017-05-06 21:12:15
有几种方法可以通过,例如:
<代码>F29
发布于 2017-05-06 21:37:13
在Personal类中使用[DatabaseGenerated(DatabaseGeneratedOption.Identity)]。
示例:
public class Personal {
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int PersonalId {get;set;}
public string PName {get;set;}
public string PLastname {get;set;}
public string PStatus {get;set;}
public int ShopId {get;set;}
[DataType(DataType.Password)]
public string PPassword {get;set;}
public string GenderID {get;set;}
public DateTime? DOB {get;set;}
[EmailAddress]
public string Email {get;set;}
public DateTime? JobStartDate {get;set;}
public string PAuthorisation {get;set;}
[DataType(DataType.PhoneNumber)]
public string Phone {get;set;}
}https://stackoverflow.com/questions/43820771
复制相似问题