Je suis assez nouveau avec C# et .NET. J'essaie de modéliser un graphique avec des données hétérogènes. Je veux dire que je voudrais être en mesure de faire quelque chose comme ceci:Gâcher avec les génériques et la modélisation graphique
// Simple graph modeling using generics
public class Node<T>
{
private T data;
public Node(T data)
{
this.data = data;
}
}
public class Edge<T, U>
{
private T source;
private U destination;
public Edge(T source, U destination)
{
this.source = source;
this.destination = destination;
}
}
il Construire cette façon:
Node<Person> p = new Node<Person>(new Person("Red John"));
Node<Computer> c = new Node<Computer>(new Computer("MyComputer"));
graph.AddNode(p);
graph.AddNode(c);
graph.AddEdge(new Edge<Person, Computer>(p, c));
Mais bien sûr, la définition de la classe graphique ne me laisse pas le faire:
public class Graph<T> where T : CommonBaseClass
J'ai également essayé de définir une classe de base pour la personne et l'ordinateur, mais bien sûr, cela ne fonctionne pas. Toute suggestion d'aide/idée? J'ai besoin de données hétérogènes parce que je dois fusionner la liste des différents nœuds.
Merci de votre aide!
S'il vous plaît poster un exemple de code de compilation avec tous les codes nécessaires, y compris en particulier la définition de '' Graphique, '' Person' et Computer'. –