SORU
22 Kasım 2010, PAZARTESİ


-Boş zaman-boş ise C# ifade

Sadece merak/kolaylık sağlamak için: C# iki serin koşullu anlatım özellikleri biliyorum sağlar:

string trimmed = (input == null) ? null : input.Trim();

ve

string trimmed = (input ?? "").Trim();

Çok sık karşılaştığımız bir durum için bir ifade özlüyorum:

Eğer giriş referans null ise, o zaman çıktı, boş olmalıdır. Aksi takdirde, çıkış yöntemi ya da giriş nesnesinin erişim sonucu olmalıdır.

Benim ilk örnekte, tam olarak yaptım, ama (input == null) ? null : input.Trim() oldukça ayrıntılı ve okunamaz.

Bu durum için başka bir koşullu ifade vardır, ya da ?? operatör zarif bir şekilde kullanabilir miyim?

CEVAP
22 Kasım 2010, PAZARTESİ


Harika null-güvenli kaldırma operatör gibi bir şey mi?

string zipCode = customer?.Address?.ZipCode;

C toplarım# takım bu baktı ve bir sorunları ayrıntıları hakkında duymadım rağmen bekliyoruz... belki zarif tasarım olarak basit olmadığını bulundu.

İnanmıyorum yok böyle bir şey dil şu an, korkuyorum... ve ben duymamış herhangi bir plan, ancak bu demek değildir Bir daha olmayacak bir noktada.

EDİT: şimdi C# 6, bir parçası olacak "boş koşullu". operatör

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Curso Online Gratuito

    Curso Online

    4 Aralık 2011
  • Fubar Protocol

    Fubar Protoc

    21 AĞUSTOS 2010
  • Mark Hyder

    Mark Hyder

    6 EKİM 2011