我试图删除“ IncidentDescriptions”列表,然后从表单中添加任何新的。我已经使用调试工具来确认RemoveRange
和AddRange
方法的参数中是否存在带有值的有效对象。
private Accident_Reporting_Entities DB = new Accident_Reporting_Entities(System.Web.HttpContext.Current.Session["Facility"].ToString());
List<IncidentDescription> descriptionsToRemove = DB.IncidentDescriptions.Where(d => d.AccidentHeaderId == supervisor.AccidentHeaderId).ToList();
var descList = new List<IncidentDescription>();
for (var x = 0; x < supervisor.IncidentDescriptions.Count; x++) {
var desc = new IncidentDescription();
desc.AccidentHeaderId = supervisor.AccidentHeaderId;
desc.Username = DescriptionUser[x] ?? "N/A";
desc.Position = DescriptionPosition[x] ?? "N/A";
descList.Add(desc);
}
DB.IncidentDescriptions.RemoveRange(descriptionsToRemove);
DB.IncidentDescriptions.AddRange(descList);
DB.SaveChanges();