Je trouve que j'ai besoin d'écrire le même code dans de nombreuses classes. Le code a à voir avec la conversion entre les types. Comme je ne suis pas familier avec les génériques, ce que quelqu'un suggère comment convertir ce qui suit pour utiliser les médicaments génériques:Comment voulez-vous convertir entre Liste <Object> -> ObjectList et ObjectList -> Liste (Object) en utilisant des génériques
public class WidgetList : List<Widget> { }
public class Widget
{
public int Id { get; set; }
public string Name { get; set; }
public Widget() { }
public Widget(int Id, string Name)
{
this.Id = Id;
this.Name = Name;
}
}
public class WidgetManager
{
public static List<Widget> ToListType(WidgetList list)
{
return list.ToList<Widget>();
}
public static WidgetList ToTypeList(List<Widget> list)
{
WidgetList typeList = new WidgetList();
foreach (Widget item in list)
{
typeList.Add(w);
}
return typeList;
}
}
Peut-être que je suis malentendu vos intentions, mais quel est le point de haveing un type WidgetList? WidgetList est une sous-classe vide de la liste donc le seul but réel est de donner un nom spécifique à la liste . –
Stephan
Je ne sais pas pourquoi vous subdivisez une 'Liste' générique si vous n'ajoutez pas de fonctionnalité. Y a-t-il une raison pour laquelle vous sub-classer? Pourquoi ne pouvez-vous pas opérer sur une 'Liste'? –
linuxuser27
C'est une chose de modèle ... pour nous aider à être des codeurs paresseux. Nous n'ajoutons aucune propriété à WidgetList. C'est simplement une collection. La plupart de notre code consomme la liste. La seule fois que nous devons avoir la liste est lors de l'utilisation de linq pour filtrer les données contenues dans la liste. C'est pourquoi je voudrais écrire des méthodes de conversion génériques. –
sme