Как использовать LINQ Contains () для поиска списка перечислений?

У меня есть перечисление с именем OrderStatus , и оно содержит различные статусы, в которых может находиться Ордер:

  • Создан
  • Ожидает
  • Ожидание
  • Действительный
  • Активный
  • Обработанный
  • Завершенный

Я хочу создать оператор LINQ, который сообщит мне, является ли OrderStaus действительным, активным, обработанным или завершенным.

Сейчас у меня что-то вроде:

var status in Order.Status.WHERE(status => 
      status.OrderStatus == OrderStatus.Valid || 
      status.OrderStatus == OrderStatus.Active|| 
      status.OrderStatus == OrderStatus.Processed|| 
      status.OrderStatus == OrderStatus.Completed)

Это работает, но очень "многословно". Есть ли способ преобразовать это в оператор Contains () и немного сократить его?

9
задан p.campbell 27 October 2010 в 15:39
поделиться