Supposons que nous allons commencer un nouveau projet - une application qui contient une logique d'entreprise, une interface utilisateur sur ASP.NET, WPF ou les deux. Nous aimerions utiliser un générateur de code ORM ou DAL et implémenter notre logique métier dans des classes .NET. Il existe plusieurs façons fondamentales d'exprimer nos idées dans le domaine des affaires :
- Implémenter des classes métier sur .NET et laisser ORM générer le schéma de base de données approprié.
- Créer manuellement un schéma de base de données et générer des classes .NET par le générateur de code
- Utilisez une sorte de concepteur visuel, qui peut générer des classes d'affaires et une structure de base de données ou un script.
Qu'est-ce que vous préférez écrire : "Créer une table Personnes ( ... )" ou "public class Person { ... }" ?
Quels sont les avantages et les inconvénients de ces méthodes ?
Peut-être existe-t-il des situations particulières où une méthode est meilleure qu'une autre ?
Comment choisir la voie optimale dans un projet particulier ?
Je suis assez familier avec la méthode "Code-First" (ou "Model-First"), mais il semble que la plupart des ORM soient conçus comme des générateurs de code ou des mappeurs, ce qui suppose que j'implémente manuellement à la fois la structure de la base de données et les classes métier.
Les réponses basées sur l'expérience et les exemples d'ORM sont particulièrement bienvenues.
Edit : Remarque : la question n'est pas "Que dois-je faire en premier lorsque je démarre un nouveau projet ?", mais "Que faut-il déclarer manuellement / générer automatiquement, les classes du domaine ou la structure de la base de données ?".
0 votes
Sacrée bonne question ! +1
0 votes
Question presque dupliquée stackoverflow.com/questions/274090/