Когда вы ожидаете набор записей (> = 1 запись), как вы проверяете ситуацию с 0 записями?
Например:
RivWorks.Model.FeedStoreReadOnly store = new RivWorks.Model.FeedStoreReadOnly(AppSettings.FeedAutosEntities_connString, AppSettings.FeedAutosEntities_metadata, AppSettings.FeedAutosEntities_providerName);
RivWorks.Model.NegotiationAutos.Entities _dbFeed = store.ReadOnlyEntities();
var companyDetails = from a in _dbFeed.ClientClientMap where a.CompanyID == CompanyId select a;
return companyDetails.ToList();
Когда возвращается, происходит ошибка в ToList (), потому что нет записей, удовлетворяющих предложению WHERE. Итак, каков будет правильный способ проверки на 0 записей и каков будет рекомендуемый возврат в этот момент?
Дополнение основано на ответе ниже :
if (companyDetails.Count() > 0)
return companyDetails.ToList();
else
{
List<RivWorks.Model.NegotiationAutos.ClientClientMap> ret = new List<RivWorks.Model.NegotiationAutos.ClientClientMap>();
ret.Add(companyDetails.FirstOrDefault());
return ret;
}
Еще не тестировал, но это (логично), похоже, работает. Интересно, есть ли более простой способ?
Примечание
Я понял это. Учетная запись, под которой работал SQL, не получила от администратора базы данных правильный набор разрешений. Мы изменили все операторы GRANT для новых таблиц / представлений, и теперь они работают.
Я все еще не уверен, каков правильный ответ. Я склоняюсь к созданию пустой (новой) записи и добавлению в Список, чтобы у наших ребят, получающих Список, было что отображать (для редактирования, если ничего больше) ...