На веб-сайте ASP.NET я использую LINQ to SQL для получения данных. Эта операция несколько длинная (может быть до 3 секунд) и часто пользователь нажимает на ссылку второй раз
Уже есть открытый DataReader, связанный с этой командой
который должен быть закрыт первым.
Я смотрел на DataReader, уже открытый при использовании LINQ и других подобных тем, но я не понимаю, как с этим справиться / исправить.
Должен ли я вообще избавиться от LINQ to SQL? Как правильно справиться с этим?
EDIT:
Код, который я звоню с Page_Load
using (var wdc = new WebDataContext())
{
// Expensive operation, increase timeout
wdc.CommandTimeout = 120;
// First need to update data for this customer
wdc.Web_WrkTrackShipment_Update((int)this.Parent.ProviderUserKey, sessionId);
// Return set of this data based on parameters.
return wdc.Web_WrkTrackShipment_Load(sessionId, pageNo, pageSize, searchCriteria, dateFrom, dateTo, ref pageCount_Null).ToList();
}