Linq to Entities: как обрабатывать нулевые значения в базе данных с содержимым - PullRequest
3 голосов
/ 20 сентября 2011

Я использую EF4.

Я хочу написать следующее утверждение, используя linq для сущностей

select * from address where address.satausId in (1,2,3,4)

Идентификатор статуса в базе данных может быть нулевым

Я пытался

var statusesToFind = new List<int> {1, 2, 3, 4};

var AddressList = from sa in db.Address
                  where statusesToFind.Contains(sa.statusId)
                  select sa;

это дает мне синтаксическую ошибку

Странно то, что если я пытаюсь выполнить утверждение, как указано выше, но с использованием sa.Id, который является ключевым полем, он работает без проблем, я думаю, что проблема связана с тем фактом, что statusId в базе данных допускает нулевые значения ,

Буду признателен, если кто-нибудь подскажет, как правильно написать выше.

Спасибо

1 Ответ

4 голосов
/ 20 сентября 2011

составьте statustofind список пустых значений типа

var statusesToFind = new List<int?> {1, 2, 3, 4};

var AddressList = from sa in db.Address
                  where statusesToFind.Contains(sa.statusId)
                  select sa;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...