Итак, вот мой код, я выполняю SQL-запрос, который возвращает более 500 тысяч строк, и после этого я заполняю данные в список, чтобы сделать так много запросов linq с этими данными.
Есть ли лучшее решение для обработки данных и заполнения данных в список?
Logger.Info("Executing sql query finished. Succesfully collected {0} requests.", requestTable.Rows.Count);
foreach (DataRow row in requestTable.Rows)
{
string receiveDateString = row["RequestReceiveDate"].ToString();
DateTime receiveDate = default(DateTime);
if (!string.IsNullOrWhiteSpace(receiveDateString))
{
receiveDate = Convert.ToDateTime(receiveDateString);
}
string validationDateString = row["RequestValidationDate"].ToString();
DateTime validationDate = default(DateTime);
if (!string.IsNullOrWhiteSpace(validationDateString))
{
validationDate = Convert.ToDateTime(validationDateString);
}
string addresseeNumberString = row["RequestAddresseNumber"].ToString();
int addresseNumber = default(int);
if (!string.IsNullOrWhiteSpace(addresseeNumberString))
{
addresseNumber = Convert.ToInt32(addresseeNumberString);
}
handledTodayRequests.Add(new Request(row["RequestNumber"].ToString(), Convert.ToInt32(row["RequestStatus"].ToString()), Convert.ToDateTime(row["RequestDoneDate"].ToString()), Convert.ToDateTime(row["RequestCreationDate"].ToString()), receiveDate, validationDate, Convert.ToDateTime(row["RequestDateDue"].ToString()), row["RequestSupplierComments"].ToString(),
addresseNumber, row["RequestReference"].ToString(), row["RequsetAddresseeType"].ToString(), row["ClaimNumber"].ToString(), Convert.ToInt32(row["ClaimSchemeNumber"].ToString()), row["ClaimSchemeName"].ToString()));
}