Доброе утро, я sh обновлю таблицу, используя модель с несколькими строками и столбцами. В модели появились новые значения. Я обновлю sh без использования foreach. В таблице есть идентификатор столбца, такой как первичный ключ с идентификатором, поэтому я не могу удалить строки и заново вставить их. Кроме того, таблица имеет несколько динамических столбцов, что означает, что пользователь может добавлять пользовательские столбцы в таблицу. Как сейчас, я использую этот код, но я не хочу использовать foreach. Кто-то может мне помочь? С уважением
Модель:
public partial class ITAN
{
[Key]
public int recid { get; set; }
public int Famiglia { get; set; }
[StringLength(30)]
public string ItemCode { get; set; }
[StringLength(30)]
public string SapCode { get; set; }
[StringLength(2)]
public string Omologa { get; set; }
[StringLength(2)]
public string Stnd { get; set; }
[StringLength(100)]
public string Att_0001 { get; set; }
[StringLength(100)]
public string Att_0002 { get; set; }
// and more other fields
...
}
Контроллер:
public ActionResult SaveITAN(List<ITAN> model)
{
if (ModelState.IsValid)
{
var query3 = (from d1 in db.ITAN.AsEnumerable()
join d2 in model.AsEnumerable() on d1.recid equals d2.recid
select new { d1, d2 }).ToList();
foreach(var riga in query3)
{
riga.d1.Famiglia = riga.d2.Famiglia;
riga.d1.ItemCode = riga.d2.ItemCode;
riga.d1.SapCode = riga.d2.SapCode;
riga.d1.Omologa = riga.d2.Omologa;
riga.d1.Stnd = riga.d2.Stnd;
riga.d1.Att_0001 = riga.d2.Att_0001;
riga.d1.Att_0002 = riga.d2.Att_0002;
// ... and more other fields
}
db.SaveChanges();
return new JsonResult() { Data = new { Success = true }, };
}
else
{
....
}
}