Я использую LINQ to SQL для вызова sprocs в моей компании.Обычно это прекрасно работает, но в некоторых запросах, если ничего не найдено, выдается SqlException «Записи не найдены».
Как мне обработать этот случай?
Вот пример вызова, который я хотел быmake:
/// <summary>
/// Gets the pending messages.
/// </summary>
/// <param name="historySearchCriteria">The history search criteria.</param>
/// <returns><c>List</c> of pending messages.</returns>
public List<PendingMessage> GetPendingMessages(HistorySearchCriteria historySearchCriteria)
{
using (MessageDataContext db = new MessageDataContext(DatabaseProperties.MessageConnectionString))
{
List<PendingMessage> pendingMessages = new List<PendingMessage>();
pendingMessages.AddRange(db.usp_search_message_pending(historySearchCriteria.AccountId,
historySearchCriteria.TrackingNumber,
historySearchCriteria.StartDateTime,
historySearchCriteria.EndDateTime)
.Select(p => new PendingMessage()
{
Account = p.account,
ActionType = (OrderActionType) Enum.Parse(typeof(OrderActionType), p.action_type.ToString()),
AttemptsRemaining = p.attempts_remaining,
Message = p.message
}));
return pendingMessages;
}
}
Как лучше всего справиться с тем фактом, что я просто хочу вернуть пустой список, если записи не найдены.