SORU
15 ŞUBAT 2009, Pazar


Olabilirdi önce null için kontrol()

Senaryo şöyle...

if (entry.Properties["something"].Value != null)
  attribs.something = entry.Properties["something"].Value.ToString();

Etkili ve düzgün çalışırken, bu bana çirkin görünüyor. Eğer Olabilirdi yapmadan önce boş bir kontrol yoktur. eğer() sonra eğer bu özellik boş ise, bir özel durum atar. Bu senaryo işlemek için daha iyi bir yol var mı?

Çok takdir!

CEVAP
15 ŞUBAT 2009, Pazar


(gerçekten işe:) düzenlenmiş )

object defaultValue = "default";
attribs.something = (entry.Properties["something"].Value ?? defaultValue).ToString()

Düzenleme:Ayrıca çok zeki ama kullanışlı değil bu kullanma fırsatı buluyorum:

public static string ToSafeString(this object obj)
{
    return (obj ?? string.Empty).ToString();
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bryan Adams

    Bryan Adams

    30 Mart 2006
  • Chip Johnson

    Chip Johnson

    30 AĞUSTOS 2007
  • Matt Harding

    Matt Harding

    23 Mayıs 2006