2014-09-16 4 views
-5

Возможно ли вернуть результат из нескольких операторов switch?Несколько переменных в операторе switch-case

Например, я хотел бы использовать employee.DepartmentID и employee.StatusID для моего дела. Но как я могу включить employee.StatusID в этот оператор? Использование и/или операторов?

   switch (employee.DepartmentID) 
      { 
       case 1: 
        EMAIL = "[email protected]"; 
        break; 
       case 2: 
        EMAIL = "[email protected]"; 
        break; 
      } 
+1

Если вы ищете 'switch (employee.DepartmentID || employee.StatusID)', тогда это невозможно. – Habib

+1

, что не похоже на жизнеспособное решение. вы можете согласовать переключатель строк (employee.DepartmentID + employee.StatusID' – DidIReallyWriteThat

+2

Итак, если отдел «1», а статус «2», что должно произойти? – Servy

ответ

2

Что вам действительно нужно.

Используйте переключатель, чтобы определить, какой отдел участвует

Switch (DepartmentID) 
    { 

    case 1: 
     Email = classHR.GetEmailAddress(Status); 
     break; 
    case 2: 
     Email = classMarketing.GetEmailAddress(Status); 
     break; 
    } 

использовать статические классы для различных отделов (с использованием интерфейса предпочтительно).

Это даст вам лучшее преимущество, чем вы думаете об этом.

+0

не забывайте 'break;' – MethodMan

+1

Спасибо, обновленный с перерывом; –

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