type number long implicita data convert conversion c# types

c# - number - Decidir sobre el tipo en el tiempo de ejecución y aplicarlo en tipo genérico: ¿cómo puedo hacer esto?



type integer c# (1)

Me gustaría crear una lista de tipo fuerte y decidir el tipo en tiempo de ejecución. Este es mi código. Pensé que debería funcionar, pero no :)

Type elementType = Type.GetType(parts[0].Trim(),false,true); var elementsBeingSet = new List<elementType>();

¿Tendría alguna idea de cómo crear una lista fuertemente tipada cuyo tipo voy a decidir en tiempo de ejecución?

Duplicado: aquí hay otras versiones:


Use Type.MakeGenericType(type[]) :

Type elementType = GetElementType(); // get this type at runtime Type listType = typeof(List<>); Type combinedType = listType.MakeGenericType(elementType); IList elements = (IList) Activator.CreateInstance(combinedType);

IList usar IList para mantener el resultado, porque no conoce el tipo real que se utilizará en el tiempo de ejecución.

Para los tipos genéricos con más de un parámetro de tipo, usaría algo como Dictionary<,> .

Ver también http://msdn.microsoft.com/en-us/library/system.type.makegenerictype.aspx