2009-10-16 6 views
0

Je vais écrire mon propre DAL en C#. J'ai décidé d'utiliser le modèle 'Unité de Travail' (mentionné ci-dessous comme uow) avec une requête comme une portée et une Carte d'Identité stockée dans HttpContext.Items.Je vais écrire 'Unité de travail', s'il vous plaît aidez-moi à trouver toutes les gimmicks

J'ai maintenant une question sur la mise en œuvre des méthodes CRUD. Comment/où sont-ils mis en œuvre? Sont-ils implémentés dans chaque classe d'entreprise (comme dans le modèle des enregistrements actifs) ou sont-ils implémentés d'une manière ou d'une autre dans la classe uow (si oui, comment)?

Je suppose également que j'ai besoin d'utiliser comme portée non seulement la requête, mais aussi la connexion db. Mais comment? Dois-je ouvrir la connexion au début de la demande et la fermer à ma disposition?

Tous les conseils sont fortement appréciés, en particulier vos expériences du «monde réel».

Merci à tous :)

+3

est le but de cet un exercice d'apprentissage ou pour une vie réelle, le scénario de l'entreprise? Si c'est pour les affaires, le meilleur conseil est de ne pas rouler les vôtres ... –

Répondre

1

par les sons de celui-ci, vous essayez de développer votre propre Object-relational mapping. Je dirais, n'essayez pas d'aller même près d'écrire le vôtre. Sur le sujet, l'un des contributeurs actifs du paquet ORM nHibernate, Davy Brion, a écrit un tutoriel qui explique comment écrire un simple ORM étape par étape.

Il dit qu'il est passer 24 heures à écrire le tutoriel, donc ne vous attendez pas à quoi que ce soit près avoir un paquet ORM prêt pour la production.

En outre, le tutoriel est destiné à expliquer le fonctionnement d'un ORM, plutôt que de vous motiver à écrire un concurrent au produit nHibernate, le produit auquel il contribue.

Build Your Own Data Access Layer Series

Questions connexes