Bu (kukla) kodu ile genel bir yöntem var (evet IList tahmin ediyor, ama benim kod IList ama başka bir koleksiyon kullanmıyor, yine de bu soru için alakasız olduğunu biliyorum ...)
static T FindThing<T>(IList collection, int id) where T : IThing, new()
{
foreach T thing in collecion
{
if (thing.Id == id)
return thing;
}
return null; // ERROR: Cannot convert null to type parameter 'T' because it could be a value type. Consider using 'default(T)' instead.
}
Bu bana bir yapı hatası veriyor
Msgstr "Bir değer türü olabileceğinden null türünü 'T' türüne dönüştüremezsiniz. Bunun yerine 'default (T)' kullanmayı düşünün."
Bu hatayı önleyebilir miyim?
null
bakılmaksızın aitT
olduğuObject
veyaint
yachar
.