2010-02-25 19 views
1

Disons que j'ai une table Person avec une colonne FirstName et LastName. J'ai étendu la classe d'entité Person LINQ avec une propriété get "FullName", qui concatène le prénom et le nom.Comment générer du SQL optimisé avec mes méthodes partielles (ajoutées) sur les entités LINQ

Une requête LINQ comme: from person... select fullName where id = x
génère SQL sélectionner toutes les colonnes du patient, car FullName est évaluée après la cuisson de la requête. Je voudrais limiter la clause select aux seules 2 colonnes requises. Ceci est un exemple simple, mais la limitation qu'il montre est que je ne peux pas isoler mes règles d'affaires/de mise en forme mais les intégrer dans la requête LINQ, elles ne sont donc pas réutilisables (puisqu'elles sont dans la partie select) ou j'ai besoin de sélectionner les deux colonnes séparément, puis de les concaténer plus haut dans la couche de données ou de gestion avec des méthodes auxiliaires statiques.

Des idées pour un design propre en utilisant les classes partielles d'entité ou des extensions?

Merci

+0

utilisez-vous EF ou LinqToSql? –

+0

J'utilise LinqToSQL –

Répondre

0

Personnellement, je crée une colonne calculée au niveau de la table il fait partie de l'entité que vous stockez dans une rangée