SORU
24 Kasım 2008, PAZARTESİ


Statik bir sınıf içinde bir Sözlük ilan

Nasıl statik bir sınıf içinde statik bir sözlük nesnesi bildirmek için? Denedim

public static class ErrorCode
{
    public const IDictionary<string , string > ErrorCodeDic
        =new Dictionary<string, string>()
             {
            {"1","User name or password problem"}     
};
}

Ama derleyici yakınıyor "Bir başvuru türü dize dışında sabit bir alan yalnızca null ile başlatılabilir".

CEVAP
24 Kasım 2008, PAZARTESİ


Eğer sözlük bir kez ilan ve asla bunu değiştirmek istiyorsanız, o zaman salt okunur olarak bildirin:

private static readonly Dictionary<string, string> ErrorCodes
    = new Dictionary<string, string>
{
    { "1", "Error One" },
    { "2", "Error Two" }
};

Eğer salt okunur (sadece referans ama aynı zamanda koleksiyon öğeleri) sözlük öğeleri istiyorsan, o zaman bir salt okunur C uygulayan sözlük sınıf oluşturmak zorunda kalacaksınız.

Başvuru için ReadOnlyCollection göz atın.

BTW inş tek satır skaler değerler bildirirken kullanılabilir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • dcigs

    dcigs

    9 EYLÜL 2006
  • KSI

    KSI

    25 Temmuz 2009
  • superemposed

    superemposed

    25 Aralık 2007