SORU
2 Aralık 2010, PERŞEMBE


Nasıl numaralama null olarak ayarlamak için

Bir sıralama var

string name;

public enum Color
{
  Red,
  Green,
  Yellow
}

Nasıl yük NULL olarak ayarlayın.

name = "";
Color color = null; //error

Düzenlenmiştir: Benim kötü, doğru düzgün açıklayamadım. Ama bütün cevapları null ilgili mükemmel. Ne ise, benim durum almak/ad gibi diğer elemanları ile bir sınıf, vb numaralama için hazırladım. Sayfa yük üzerinde sınıf initiallize ve null değerleri varsayılan çalışın. İşte senaryo (Kod C#):

namespace Testing
{
    public enum ValidColors
    {
        Red,
        Green,
        Yellow
    }

    public class EnumTest
    {
        private string name;
        private ValidColors myColor;

        public string Name
        {
            get { return name; }
            set { name = value; }
        }

        public ValidColors MyColor
        {
            get { return myColor; }
            set { myColor = value; }
        }

    }

    public partial class _Default : System.Web.UI.Page
    {       
        protected void Page_Load(object sender, EventArgs e)
        {
            EnumTest oEnumTest = new EnumTest();
            oEnumTest.Name = "";
            oEnumTest.MyColor = null; //???
        }
    }

}

Daha sonra aşağıdaki önerileri kullanarak yukarıdaki kodu ve yöntemleri ayarlamak ile iş yapmak için değiştirdim. Ben sadece eklemek gerekir "?" özel numaralandırma bildirimi sırasında EnumTest sınıf değişkeni ve set/get yöntemi:

public class EnumTest
{
    private string name;
    private ValidColors? myColor; //added "?" here in declaration and in get/set method

    public string Name
    {
        get { return name; }
        set { name = value; }
    }

    public ValidColors? MyColor
    {
        get { return myColor; }
        set { myColor = value; }
    }

}

Tüm güzel önerileriniz için teşekkürler.

CEVAP
2 Aralık 2010, PERŞEMBE


Ya da kullanabilirsiniz "?" null olabilecek bir tür için operatör.

public Color? myColor = null;

Ya da numaralama (aka 0) İLK değer varsayılan değer olmak suretiyle boş olması numaralamalar için standart bir uygulama kullanın. Renk Hiç bir durumda örneğin.

public Color myColor = Color.None;

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Google Chrome

    Google Chrom

    1 EYLÜL 2008
  • Jon Reed

    Jon Reed

    14 AĞUSTOS 2006
  • Michael Neal

    Michael Neal

    2 Mayıs 2009