2014-12-02 2 views

ответ

5

Это означает сделать первый элемент из коллекции, где AdvertID == app.AdvertID & & IsActive == истинный. Если это null возвращает false, в противном случае вернет true.

A? : синтаксис известен как тернарный оператор и используется как сокращенное выражение if/else.

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

.Any(x => x.AdvertID == app.AdvertID && x.IsActive == true) 

это возвращает истину, если отвечает условиям, иначе ложь.

Полная строка кода будет:

bool status = datacontext.tblTransactionDetails.Any(x => x.AdvertID == app.AdvertID && x.IsActive == true); 
+3

x.IsActive == правда может быть сокращен до x.IsActive – Vincent

+0

Я думаю, что лучше это делать .Count? – brykneval

+0

@brykneval Как бы вы фильтровали по условию заранее? Но да, обычно поле/свойство графа будет быстрее, но мы говорим о нелепых уровнях микро-оптимизации здесь. Исходя из требований фильтрации, использование .Any() семантически намного лучше, и, что важно, оно очень читаемо и кратким. –

Смежные вопросы