Je suis en train d'utiliser un modèle MVC/MCP pour mon application C# (WinForms).
Dans la logique métier, j'ai des classes dérivées comme
public abstract class Item
{
public abstract double CalculatePrice();
...
}
public class Nail : Item
{
...
}
public class Car : Item
{
...
}
Pour la logique métier, le type dérivé d'un objet n'a pas d'importance. Je peux toujours appeler des méthodes comme CalculatePrice() peu importe le type réel de l'objet.
Mais comment gérer de tels objets dans l'interface utilisateur (WinForms) lorsque je les présente à l'utilisateur ? (et bien sûr, une Car est présentée différemment qu'un Nail)
- Je ne veux pas avoir de grande déclaration switch dans l'interface utilisateur / le contrôleur pour gérer tous les types d'objets.
-
Je ne veux pas implémenter une
méthode abstract double ShowMeAtUI()
dans la classe de l'objet, car il s'agit de la logique métier et elle ne devrait pas se soucier des éléments de l'interface utilisateur.
Alors, quelle est la meilleure façon propre de concevoir cela.
Merci d'avance!!