2012-03-23 15 views
4

は、私たちはしかし、外部サービスと連携いくつかの厳密な型を持っているとして、私は私が戻って列挙値の文字列表現を変換するために苦労していた外部サービスからの応答を得るとき私のApexコードで列挙値を使用したいですそれは私のコードで後で使用することができるようにEnum。 C#でこれを行うにStringを解析し、ApexコードでEnum値を返すにはどうすればよいですか?

私はこれを行うだろう:

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

をが、Apexコードで、私はこれを行う方法を見つけることができません。誰かが解決策を持っていますか?

答えて

7

これはジェネリックではありませんが、それは動作します:

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

私はそれは私が、私は、ユーティリティを書くことができます私のコードでは、列挙型の膨大な量を持っていない一般的なものではないとOKだと思います方法 – thegogz

+1

私はIdeate [Apex Enum parse from string](https://success.salesforce.com/ideaView?id=08730000000LfWhAAK)を公開してApexから直接処理できるかどうかを確認しました。 –

関連する問題