2010-06-14 3 views
1

Ce que je trouve vraiment puissant dans Entités ADO.NET ou LINQ to SQL, est la possibilité de modéliser des requêtes complexes. Je n'ai vraiment pas besoin des mappings que les Entités ou LINQ to SQL font pour moi - j'ai juste besoin de la capacité des expressions complexes de modèle qui peuvent être traduites en T-SQL.Utilisation d'entités ADO.NET Fournisseur LINQ pour modéliser des requêtes SQL complexes?

Ma question est - est-ce que j'abuse trop? Puis-je utiliser Entity Framework pour modéliser des requêtes et juste cela? Devrais-je? Je sais que je peux écrire mon propre fournisseur LINQ to SQL personnalisé, mais ce n'est tout simplement pas possible de gérer les intervalles de temps que j'ai.

Quelle est la meilleure approche pour modéliser des requêtes T-SQL complexes? Comment gérez-vous les bye, les ordres, les jointures, les unions, etc., conditionnels, dans le monde de la POO? En utilisant StringBuilders pour ce genre de travail semble trop moche et plus difficile à maintenir compte tenu des possibilités que nous avons avec Expression arbres.

Lorsque j'utilise StringBuilder pour modéliser une requête SQL complexe, je me sens coupable! Je ressens la même chose que quand je dois coder un nombre différent dans mon code qui est différent de 0 ou 1. Si vous vous demandez s'il existe une façon meilleure et plus propre de le faire ...

I Je dois mentionner que j'utilise C# 4.0, mais je ne cherche pas spécifiquement une réponse dans cette langue, mais plutôt dans le domaine de CLR 4. Y a-t-il de vraies bibliothèques d'entreprise qui peuvent aider à construire un SQL complexe à l'exécution?

Répondre

0

Si vous trouvez qu'il est plus facile (pour ne pas mentionner moins d'erreurs) de composer une requête dans LINQ plutôt que T-SQL, alors pourquoi pas?

Il n'existe aucune loi stipulant que vous ne pouvez pas utiliser EF ou L2S pour vous aider à écrire du T-SQL, puis éteignez et exécutez directement le T-SQL.

En fait, je pense que cela a beaucoup de sens.

Ne vous sentez pas coupable!

+0

Merci pour la réponse. Je suis à la recherche d'informations sur les alternatives à celles mentionnées ci-dessus? Comment composez-vous un T-SQL complexe lors de l'exécution? –

Questions connexes