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

  • Bennythecoder

    Bennythecode

    25 Mart 2008
  • Mark Halberstadt

    Mark Halbers

    19 ŞUBAT 2010
  • Turkish Airlines

    Turkish Airl

    11 AĞUSTOS 2006