То, что я пытаюсь сделать, это отредактировать соответствующую строку и изменить значение для столбца, но оно возвращает значение null. Я считаю, что это связано с тем, что я сохраняю запрос к объекту, потому что, если я напрямую обращаюсь к запросу, он всегда обрабатывает запрос каждый раз. Каков наилучший способ справиться с этим?Datatable.GetChanges() всегда возвращает null
using (SymbolsTableAdapter symbolAdapter = new SymbolsTableAdapter())
using (Dataset.SymbolsDataTable symbolTable = new Dataset.SymbolsDataTable())
{
symbolAdapter.Fill(symbolTable);
foreach (var error in errors)
{
var query = from c in symbolTable
where c.Symbol == error.Key && c.Market == error.Value
select c;
Dataset.SymbolsRow row = query.AsParallel().FirstOrDefault();
if (row != null)
{
row.isUnderReview = true;
}
}
// now save
if (symbolTable.GetChanges() != null)
{
symbolTable.AcceptChanges();
}
}
Что такое ошибки ваш код ? Это происходит внутри цикла? – dotnetstep
@dotnetstep Он никогда не получает никаких ошибок, но он никогда не попадает в строку, которая говорит symbolTable.AcceptChanges(); – user3610374
Поскольку он никогда не заходит внутрь цикла, поэтому ваша таблица не изменяется после загрузки, поэтому никаких изменений не обнаружено, поэтому они не смогут принять принятые изменения. – dotnetstep