Я читаю данные из документа XLS и использую превосходную библиотеку LINQ to Excel .Проблема, которая у меня есть, больше связана с работой с LINQ.
Я читаю новые и обновленные инциденты из листа Excel.Поэтому я хочу проверить, существует ли инцидент в базе данных, и если это так, я хочу связать его с этим инцидентом, а затем обновить его всеми новыми данными из Excel, которые я прочитал.Некоторый код:
var excel = new ExcelQueryFactory("filepath");
var getincident = from jj in excel.Worksheet<Incident>("Sheet1")
select jj;
foreach (var incident in getincident)
{
if (incident.CallId.Trim() == "")
break;
if (exists(incident.CallId, context))
{
incident.id = (from b in context.Incidents
where b.CallId == incident.CallId
select b.id
).First();
context.Incidents.Attach(incident, true);
}
else
{
context.Incidents.InsertOnSubmit(incident);
}
context.SubmitChanges();
}
и существует - это простая проверка, если инцидент существует:
private bool exists(string piCallId, DataClasses1DataContext context)
{
return (from b in context.Incidents
where b.CallId == piCallId select b
).Any();
}
Мне нужно сначала проверить, существует ли инцидент, прежде чем все новые данныедобавьте, а затем отправьте изменения.Пожалуйста, помогите.