SORU
7 Mart 2010, Pazar


Numaralama.() Ayrıştırmak, kesinlikle daha güzel bir yolu?

Bir numaralandırma yok olur

public enum Colours
{
    Red,
    Blue
}

Görebildiğim tek yolu onları ayrıştırma gibi bir şey yapıyor

string colour = "Green";
var col = (Colours)Enum.Parse(typeOf(Colours),colour);

Bu "Yeşil" Colours numaralama üyesi değildir. çünkü System.ArgumentException atar

Şimdi gerçekten nefret kaydırma kodu try/catch, yok daha güzel olanı bu değil dahil beni yineleme ile her Colours numaralama ve bir dize karşılaştırma karşı colour?

CEVAP
7 Mart 2010, Pazar


Enum.IsDefined() ilk olarak, bir try/catch sarma kendinizi kurtarmak için kullanabilirsiniz. Veya giriş numaralama geçerli bir üyesi olup olmadığını boolean değeri döndürür.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • B3ASTTY™

    B3ASTTY™

    27 Mayıs 2013
  • How It Should Have Ended

    How It Shoul

    5 Mart 2007
  • ImBluecams

    ImBluecams

    25 Kasım 2012