Question

Quelqu'un peut-il me dire s'il est possible d'extraire les classes générées linq2sql dans un projet distinct en C #? - Je suppose que je peux créer les fichiers et les copier dans un nouveau projet et ajouter une référence à mon projet de données

?

Le problème que j'ai est que j'ai mon interface, couche de service et de la couche de données ...

Actuellement, la couche de données a également généré linq2sql car c'est là le dbml est.

Alors, donc je dois avoir une référence de service aux données, ce qui est bon! Mais j'ai mon interface utilisateur pour faire référence à la couche de service, mais je ne pense pas une bonne idée pour mon interface utilisateur d'avoir une référence à la couche de données (comme il en aurait besoin pour les classes de linq2sql).

La seule façon que je vois est de tirer les classes et dans un projet distinct afin que tous les projets peuvent partager. Est-ce une bonne pratique?

Qu'est-ce que les conventions de nommage dois-je appeler ce projet, DTO? POCO? Les entités? ou similaire

Je vraiment aimerais entendre un retour d'alimentation de la façon d'y arriver et je suis temps les lignes droite

Était-ce utile?

La solution

Je ne suis pas sûr à 100% si cela fonctionne aussi pour Linq2Sql (je pense qu'il fait), mais c'est ce que je fais avec Linq2Entities:

Une fois que les classes ont été générées, je les déplacer manuellement à un autre projet. J'appelle habituellement ce projet xxxxxx.Model. Les entités seraient probablement aussi bien, mais je resterais loin de DTO et POCO parce que ces classes ne sont ni. Je crois qu'il ya un moyen de faire POCO avec Linq2Sql, mais pas si vous utilisez le concepteur. Je puis ajouter des références au besoin aux autres couches.

Hope this helps.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top