क्या निम्नलिखित कोड प्राप्त करना संभव है? मुझे पता है कि यह काम नहीं करता है, लेकिन अगर कोई वर्कअराउंड है तो मैं सोच रहा हूं?
Type k = typeof(double);
List<k> lst = new List<k>();
क्या निम्नलिखित कोड प्राप्त करना संभव है? मुझे पता है कि यह काम नहीं करता है, लेकिन अगर कोई वर्कअराउंड है तो मैं सोच रहा हूं?
Type k = typeof(double);
List<k> lst = new List<k>();
जवाबों:
हाँ वहाँ है:
var genericListType = typeof(List<>);
var specificListType = genericListType.MakeGenericType(typeof(double));
var list = Activator.CreateInstance(specificListType);
एक क्लीनर तरीका एक सामान्य विधि का उपयोग करने के लिए हो सकता है। कुछ इस तरह से करें:
static void AddType<T>()
where T : DataObject
{
Indexes.Add(typeof(T), new Dictionary<int, T>());
}