Question

Je suis assesing à l'aide NetTiers pour mon prochain projet.

La question est: Chaque table dans mon schéma a un AccountId sur le terrain. A chaque demande au DAL Je veux que ce soit une exigence que le AccountId est passé et utilisé comme filtre dans la requête.

Il serait acceptable si une surcharge supplémentaire a été généré, qui a utilisé cette paramater.

Je soupçonne que cette fonctionnalité ne se construit pas en si quelqu'un peut offrir des conseils sur l'endroit où commencer par la modification des modèles pour l'ajouter?

Était-ce utile?

La solution

Modification des modèles de NetTiers n'est pas difficile une fois que vous sorte de connaître votre chemin dans le labyrinthe des classes qu'il génère, mais il est généralement assez fastidieux et très sujette à l'erreur.

Ma première hypothèse est que la base de données que vous générez est hors soit a seulement quelques tables ou est dénormalisé - sinon il ne serait pas logique d'avoir un AccountId colonne de chaque table. Si elle est postérieure et la structure ne peut pas être normalisée, il croit que ce serait un changement assez lourd pour obtenir tous les ses propriétés de navigation construit sur la base base de données clés étrangères (y compris DeepLoads) travaillant avec un supplément AccountId filtre.

, vous mentionnez également que l'ajout contenant les surcharges AccountId serait une solution acceptable. Cependant, cela laisserait les NetTiers existants de surcharges qui ne nécessitent pas un AccountId paramètre à tous les consommateurs DAL ...

Quoi qu'il en soit, voici un résumé de quelques-uns des domaines que vous auriez besoin de se pencher sur la modification:

Mon conseil général est que tout NetTiers et CodeSmith étaient des outils de choix pour la construction de lignes d'accès il y a quelques années, je ne pouvais pas recommande d'aller dans cette voie ces jours-ci. Avec l'évolution de Entity Framework et NHibernate open-source de Microsoft, vous ne devriez pas vraiment besoin de tremper trop profondément dans la couche de plomberie-accès aux données plus (même si seulement au niveau de génération de code).

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