3 Kasım 2010, ÇARŞAMBA
Yazın 'T' olamaz değere dönüştürülmesi
Bu büyük olasılıkla bir acemi bir soru olacak ama google şaşırtıcı bir cevap vermedi.
Oldukça yapay bu yöntem var
T HowToCast<T>(T t)
{
if (typeof(T) == typeof(string))
{
T newT1 = "some text";
T newT2 = (string)t;
}
return t;
}
C bilgim gelen bu çalışması bekleniyor. Ancak, "türü örtülü olarak 'T'" ve "tipi" '" yukarıda atamaları için hem de. T dizeye dönüştürülemiyor dizeye dönüştürülemiyor ile derleme başarısız
Kavramsal olarak yanlış bir şey yapıyorum ya da yanlış sözdizimi vardır. Bana bu tür bir yardım lütfen.
Teşekkür ederim!
CEVAP
3 Kasım 2010, ÇARŞAMBA
if
bir blok içinde olsa bile, derleyici T
string
olduğunu bilmiyor.
Bu nedenle, dökme izin vermez. (Olamaz string
DateTime
dökme aynı sebepten)
İhtiyacınız atama object
, (herhangi bir T
can atmak) ve oradan string
(object
olabilir döküm string
).
Örneğin:
T newT1 = (T)(object)"some text";
string newT2 = (string)(object)t;
Bunu Paylaş:
Yazın kullanmak nesne dizisi olarak st...
olamaz't 127.0.0.1 shell/mongo.js...
&; deyimi bir vücut ile lambda ifade i...
3.0 sürümü için değişim projesi model ...
Sil .app_data neden dosya istisna olam...