'dan başlat. Genel bir tür oluşturmam gerekiyor, ancak derleme zamanında türü bilmiyorum. Bunu yapmak istiyorum: t geçerli bir tür olmadığından, bu derleme yapılmayacaktır: . Ama geçerli bir tür hakkında her şeyi biliyor. Böyle bir System.Type gelen genel listesini dinamik olarak oluşturmak için bir yolu var mı? Düşünceye ihtiyacım olabilir ve sorun değil, ben sadece burada biraz kayboldum. Bunun gibiGenel nesneyi System.Type
17
A
cevap
24
: Yalnızca tip object
bir değişkene atayabilirsiniz
Type t;
Type genericListType = typeof(List<>).MakeGenericType(t);
object list = Activator.CreateInstance(genericListType);
Not. (Her ne kadar jenerik olmayan IList
arabirimine gönderilebilirsiniz)
değişkenini kullanmak için, muhtemelen yansımaya ihtiyacınız olacaktır.
İlgili konular
- 1. C#: Bir Genel Nesneyi Geçirme
- 2. System.Type ürününü XAML
- 3. Genel sözlük anahtarı olarak bir nesneyi kullanma
- 4. Genel bir liste <MyClass> IList <System.Type> nasıl dönüştürülür?
- 5. System.Type değişkenlerinde "is" operatörü nasıl kullanılır?
- 6. AutoFixture: Bir System.Type Oluşturma Adı Nasıl Oluşturulur
- 7. Yansıma - System.Type örneğinden jenerik parametreleri alma
- 8. Geri dönüş türü genel bir arabirim olduğunda, bir nesneyi genel bir döndürme türüne nasıl atarsınız?
- 9. , nesneyi
- 10. CoreData nesneyi
- 11. Nesneyi PANDAS
- 12. Genel nesnelerin genel listesi
- 13. Nesneyi başka bir nesneye kopyalama
- 14. çözmek için başarısız "System.Void ObjCRuntime.UserDelegateTypeAttribute :: ctor (System.Type)" Xamarin.iOS
- 15. Bir DbType'ı System.Type ortamına en iyi nasıl dönüştürebilirim?
- 16. Türü yalnızca System.Type olarak biliniyorsa, türün varsayılan değeri nasıl alınır?
- 17. Genel
- 18. Kapalı genel tür bilmeden genel özellik nasıl erişilir
- 19. Genel işlev için genel sıfır
- 20. Yeni Nesne, boş nesneyi döndürür
- 21. Herhangi bir nesneyi java ile HTML'ye dönüştürün
- 22. Bir nesneyi C# 'daki soyut bir sınıfa atanmış genel bir listede nasıl alabilirim?
- 23. Neden Java genel bir ham sınıf, tür parametreleri belirtilmemişse, tüm jenerik nesnelere nesneyi siler?
- 24. Bir nesneyi TimeSpan ve Genel Listeleri olan XML'de C# ile seri hale getirebilir miyim?
- 25. TürScript'te genel türün algılanması
- 26. Json genel nesne türü
- 27. Yönlendirmeden Genel Görünüm Ayrıntı GörünümüDuvar görünümü
- 28. İki nesneyi nasıl birleştiririm?
- 29. Nesneyi oturumdan kaldırma
- 30. Çalışan Nesneyi Anlamak Tablo
+1 Bilmiyordum Listesi <> 'yasaldı. oldukça havalı. –
@Igot: Sadece 'typeof' içinde. – SLaks
Bu harika çalışıyor, ancak sonrasında kullanmak için bir acı. Ancak işi biter. – captncraig