IList<T>
Bir parametre olarak kullanan bir yöntemim var . O T
nesnenin türünü kontrol etmem ve ona göre bir şeyler yapmam gerekiyor. T
Değeri kullanmaya çalışıyordum , ancak derleyici buna izin vermiyor. Benim çözümüm şudur:
private static string BuildClause<T>(IList<T> clause)
{
if (clause.Count > 0)
{
if (clause[0] is int || clause[0] is decimal)
{
//do something
}
else if (clause[0] is String)
{
//do something else
}
else if (...) //etc for all the types
else
{
throw new ApplicationException("Invalid type");
}
}
}
Bunu yapmanın daha iyi bir yolu olmalı. Bunun türünü kontrol edip T
sonra bir switch
ifade kullanmamın bir yolu var mı?