Estoy tratando de almacenar una lista de objetos genéricos en una lista genérica, pero estoy teniendo dificultades para declararla. Mi objeto se parece a:Una lista genérica de genéricos
public class Field<T>
{
public string Name { get; set; }
public string Description { get; set; }
public T Value { get; set; }
/*
...
*/
}
Me gustaría crear una lista de estos. Mi problema es que cada objeto en la lista puede tener un tipo separado, por lo que la lista poblada podría contener algo como esto:
{ Field<DateTime>, Field<int>, Field<double>, Field<DateTime> }
Entonces, ¿cómo os anuncio que?
List<Field<?>>
(me gustaría quedarse como typesafe como sea posible, así que no quiero usar un ArrayList).
Es una idea interesante "mantenerse lo más seguro posible", sin embargo, ¿no está violando el concepto http://en.wikipedia.org/wiki/YAGNI? Piensa cómo vas a acceder a esa lista, ¿realmente la necesitas de manera tan específica? –