Создайте список типа переменной

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

Я хочу использовать нотацию Списка, но все, что я знаю, является "Системой. Введите"

Тип a имеет, является переменным. Как я могу создать список типа переменной?

Я хочу что-то подобное этому коду.

public IList createListOfMyType(Type myType)
{
     return new List<myType>();
}
30
задан Jan 22 March 2010 в 14:59
поделиться

2 ответа

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

    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[] {});
19
ответ дан 27 November 2019 в 23:35
поделиться

Примерно так должно работать.

public IList createList(Type myType)
{
    Type genericListType = typeof(List<>).MakeGenericType(myType);
    return (IList)Activator.CreateInstance(genericListType);
}
47
ответ дан 27 November 2019 в 23:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: