2010-05-03 31 views
5

Eşleşen bir değer arayan bir numaralandırma ile döngülemenin en iyi yolu nedir?Numaralandırma ile döngü

string match = "A"; 

enum Sample { A, B, C, D } 

foreach(...) { 
    //should return Sample.A 
} 
+0

foreach ne olacak? Tam olarak test etmeye ne çalışıyorsunuz? – Kobi

+0

"A" olup olmadığını görmek ve eşleşen numaralandırıcı değeri – Germ

cevap

0
public Sample matchStringToSample(string match) 
{ 
    return (Sample)Enum.Parse(typeof(Sample), match); 
} 

Sen dize maç geçerli bir numaralandırma değeri değil olaya el gerekirdi. Bu durumda Enum.Parse bir ArgumentException atar.

+1

döndürmek için arıyorum. Bazen başarısız olmasını bekliyorsanız, Enum.TryParse() –

+1

@Nelson kullanın: 'Enum.TryParse '.Net 4.0 için yeni. – SLaks

0
Enum.Parse(typeof(Sample), "A"); 
0

Kullanım Enum.Parse

(Sample)Enum.Parse(typeof(Samples), "A"); //returns Sample.A 
+0

@Mark Byers, bu sadece bir örnek ifadedir. Ona bir mola ver. – AMissico