SORU
20 EYLÜL 2008, CUMARTESİ


Nasıl bir Sistem dönüştürebilirim.Null versiyonu için tür?

Bir kez daha şu: "orada bir kolay yerleşik yardımcı benim yöntem yerine?" şeyler yapmanın yolu

Kolay null olabilecek bir tür temel türü bu, ama nasıl bir null sürümünü alabilirim .NET tür?

Var

typeof(int)
typeof(DateTime)
System.Type t = something;

ve istiyorum

int? 
DateTime?

ya

Nullable<int> (which is the same)
if (t is primitive) then Nullable<T> else just T

Bir yerleşik bir yöntem var mı?

CEVAP
20 EYLÜL 2008, CUMARTESİ


Burada kullandığım kod:

Type GetNullableType(Type type) {
    // Use Nullable.GetUnderlyingType() to remove the Nullable<T> wrapper if type is already nullable.
    type = Nullable.GetUnderlyingType(type);
    if (type.IsValueType)
        return typeof(Nullable<>).MakeGenericType(type);
    else
        return type;
}

Edit: Orijinal kodu type kendisi *9.* eğer beklenmedik bir şekilde davranacaktı bir hata vardı

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BMG Rentals Property Management

    BMG Rentals

    23 Mayıs 2011
  • Hot For Nutrition

    Hot For Nutr

    26 ŞUBAT 2007
  • Makeup Lover

    Makeup Lover

    12 HAZİRAN 2011