2012-03-23 1 views
4

외부 서비스에서 작업 할 때 몇 가지 엄격한 유형이 있으므로 Apex 코드에서 Enum 값을 사용하려고합니다. 그러나 외부 서비스에서 응답을 받으면 Enum 값의 String 표현을 다시 열거 형이므로 내 코드에서 나중에 사용할 수 있습니다.String을 파싱하고 Apex 코드에서 Enum 값을 반환하려면 어떻게해야합니까?

DayOfWeek wednesday = 
     (DayOfWeek)Enum.Parse(typeof(DayOfWeek), "Wednesday"); 

을하지만, 에이펙스 코드에서 내가 할 수있는 방법을 찾을 수 없습니다 :

내가이 작업을 수행 할 것 C#에서이 작업을 수행합니다. 누구에게 해결책이 있습니까?

답변

7

이 일반적인 아니지만, 그것은 작동합니다 :

String dayOfWeekNameToMatch = 'Wednesday'; 
DayOfWeek dayOfWeekMatch; 
for (DayOfWeek dow: DayOfWeek.values()) { 
    if (dow.name() == dayOfWeekNameToMatch) { 
     dayOfWeekMatch = dow; 
     break; 
    } 
} 
+0

을 내가 내가 유틸리티를 쓸 수 내 코드에서 열거의 거대한 양의가없는 것이 일반적인되지 않는로 확인 것 같아요 방법. – thegogz

+1

Apex에서 직접 처리 할 수 ​​있는지 확인하기 위해 아이디어 [Apex Enum parse from string] (https://success.salesforce.com/ideaView?id=08730000000LfWhAAK)을 게시했습니다. –

관련 문제