C# - Операторы LINQ с ИЛИ пункты

Это работает только с 64-разрядной версией Java. Перейдите в Панель управления и щелкните значок Java. В маленьком окне панели управления Java нажмите на панель меню Java, а затем нажмите кнопку view.

Если у вас две платформы Java, отключите предыдущую версию Java, затем нажмите Параметры времени выполнения и запись -Xmx1024m или меньше, чем размер ОЗУ. Не увеличивайте размер кучи, равный ОЗУ, иначе ваша система выйдет из строя.

27
задан user70192 13 March 2010 в 16:57
поделиться

6 ответов

Используйте оператор OR (||):

filteredTasks = filteredTasks.Where(p => p.TaskStateID == 10 || 
                                         p.TaskStateID == 11 || 
                                         p.TaskStateID == 12);
41
ответ дан Oded 28 November 2019 в 04:32
поделиться

Очень просто: вы используете логические ИЛИ.

filteredTasks.Where(p => p.TaskStateID == 10 || p.TaskStateID == 11 || p.TaskStateID == 12)

C # лямбды не используют подмножество языка C #: они используют весь язык. Все возможное в C # доступно лямбдам. Единственное требование - выражение должно возвращать правильный тип; и даже тогда вы можете использовать фигурные скобки, чтобы охватить более сложный код:

p => { /* code block that has a return statement here */ }
1
ответ дан zneak 28 November 2019 в 04:32
поделиться
var taskIds = new[]{10, 11, 12}

var selectedTasks = filteredTasks.Where(p => taskIds.Contains(p.TaskStateID))
18
ответ дан 28 November 2019 в 04:32
поделиться

Самый простой способ:

.Where(p => p.TaskStateID == 10 || p.TaskStateID == 11 || p.TaskStateID == 12)

Или вы также можете сделать что-то вроде этого:

var states = new int[] {10,11,12};
filteredTasks = filteredTasks.Join(states, p => p.state, s => s, (p, s) => p);
2
ответ дан 28 November 2019 в 04:32
поделиться
filteredTasks.Where(p => (p.TaskStateID == 10 || p.TaskStateID == 11 || p.TaskStateID == 12))
1
ответ дан 28 November 2019 в 04:32
поделиться

Используйте оператор условного ИЛИ :

filteredTasks = filteredTasks.Where(p => p.TaskStateID == 10 ||
                                         p.TaskStateID == 11 ||
                                         p.TaskStateID == 12);
8
ответ дан 28 November 2019 в 04:32
поделиться