Подтвердить что ты не робот

Создать список типов переменных

Я пытаюсь создать список определенного типа.

Я хочу использовать нотацию List, но все, что я знаю, это "System.Type"

Тип a имеет переменную. Как создать список типа переменной?

Я хочу что-то похожее на этот код.

public IList createListOfMyType(Type myType)
{
     return new List<myType>();
}
4b9b3361

Ответ 1

Вы можете использовать Reflections, вот пример:

    Type mytype = typeof (int);

    Type listGenericType = typeof (List<>);

    Type list = listGenericType.MakeGenericType(mytype);

    ConstructorInfo ci = list.GetConstructor(new Type[] {});

    List<int> listInt = (List<int>)ci.Invoke(new object[] {});

Ответ 2

Что-то вроде этого должно работать.

public IList createList(Type myType)
{
    Type genericListType = typeof(List<>).MakeGenericType(myType);
    return (IList)Activator.CreateInstance(genericListType);
}