Запрос LINQ, где логическое значение равно true или false - PullRequest
6 голосов
/ 17 октября 2011

Как я могу сравнить логическое значение с истинным и ложным в запросе LINQ?

Если hideCompleted имеет значение true, я хочу показать значения, где IsCompleted имеет значение false. Если hideCompleted имеет значение false, я хочу показать значениягде IsCompleted имеет значение true или false

Пример:

(t1.IsCompleted ?? false == (hideCompleted == true ? false : (true || false)))

Ответы [ 3 ]

6 голосов
/ 17 октября 2011

Просто чтобы быть уверенным, что я вас правильно понимаю, если hideCompleted имеет значение false, вас не волнует значение IsCompleted?Если так ...

!(hideCompleted && t1.IsCompleted)
4 голосов
/ 17 октября 2011

Создайте свой запрос, основываясь на hideCompleted, равном true, аналогично этому подходу:

var query = dc.SomeTable;
if (hideCompleted)
{
    query = query.Where(t1 => !t1.IsCompleted);
}

Таким образом, когда hideCompleted равно true, вы фильтруете, что t1.IsCompleted равно false.Если hideCompleted равно false, ваш исходный запрос будет получать все результаты независимо от значения t1.IsCompleted.

3 голосов
/ 17 октября 2011

Вы можете использовать это условие

where (hideCompleted==true && t1.IsCompleted==false) || (hideCompleted==false)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...