Entity Framework sélectionner une valeur à partir de la ligne
Je suis en utilisant Entity Framework .NET 3.5
J'ai deux tables avec 0-1 à beaucoup de relation. Disons que Citoyen et de la Ville. Chaque citoyen a colonne de clé étrangère (ID) qui le relie à la Ville.
Lorsque je sélectionne simple citoyen, j'ai aussi besoin de sélectionner le nom de la ville où il habite.
Parce que la ville de tableau contient des tonnes de données qui n'est pas vraiment liée à citoyen, donc je ne veux pas le récupérer à partir de la base de données pour économiser de la bande passante.
Actuellement, je suis en utilisant la fonction d'Inclure (), mais il s'empare de toutes les données de la Ville liées à des citoyens, alors que j'ai besoin seulement de nom.
Est-il un moyen d'écrire une requête pour sélectionner une cellule à partir de l'ensemble de la ligne EF et sans créer de nouvelles interfaces ou des classes ou des référentiels?
Voici mon Incluent:
Citizen citizen = db.Citizens.Include("Cities").First(p => p.citizen_id == id);
pourquoi y aurait-il une collection si le citoyen peut avoir 0 ou 1 seule ville?
OriginalL'auteur Alex | 2010-06-04
Vous devez vous connecter pour publier un commentaire.
Vous faites cela en saillie, par exemple
Vous pouvez également projeter sur POCOs.
Vous ne peut pas dire l'EF pour récupérer un objet de type
Citizen
avec une relativeCity
mais avec seulementCity.Name
rempli. L'EF partielle de matérialiser une entité. Utilisez la commande affichage /modèles de présentation ou de l'Otd au lieu d'entités lorsque vous avez besoin seulement de quelques champs.Tu veux dire
var cityName = c.First().CityName;
?OriginalL'auteur Craig Stuntz