2010-09-01 5 views
0

J'ai regardé EF 4 (Entity Framework) de MS.MS EF 4 et SPROC

Je comprends son utilisation pour la séparation de Layer Logic comme DAL.

Dans EF 4, je vois qu'il est possible de créer du code pour interroger la base de données, les requêtes sont stockées dans DAL. Mes questions est ce qui pourrait être l'avantage d'utiliser SPROC avec EF 4?

Pour moi appeler SPROC de l'EF 4 ne semble pas maintenir une division claire entre les couches.

Des «pièges» sur les meilleures pratiques pour EF 4 et SPROC?

Merci les gars votre soutien habituel!

Répondre

1

Il existe plusieurs raisons pour lesquelles vous pouvez utiliser EF avec des procédures stockées. Tout d'abord, l'administrateur de base de données de votre entreprise peut exiger tous les processus stockés (bien que ce soit un débat différent, mais malheureusement vous n'avez pas le choix). Dans ce cas, utiliser EF avec des procédures stockées vous permet d'utiliser le framework de cartographie riche. d'écrire une tonne de code câblage des colonnes aux propriétés.

En outre, ORM comme EF sont parfaits pour modéliser vos opérations CRUD typiques. Cependant, vous pouvez avoir une requête très complexe où il est plus facile de la modéliser avec un SQL direct qu'avec une requête EF. Dans ce cas, un sproc serait également souhaitable (et vous utilisez toujours les capacités de mappage EF).

+0

Salut Steve, merci pour votre commentaire, savez-vous si EF 4 est venu fonctionnalités contre SQL INJECTION? merci – GibboK

+0

Oui, EF se prémunira automatiquement contre les injections SQL en paramétrant en interne les variables dans le SQL. –

+0

Encore une fois merci! – GibboK