2010-04-22 2 views
0

J'utilise ASP.NET MVC2 au-dessus d'une base de données MySQL dans VS2008. J'utilise le connecteur MySQL ADO.NET 6.2.3 pour fournir la connexion pour le modèle de données d'entité ADO.NET.Navigation à l'aide de clés étrangères dans ADO.NET Entity Framework/MySQL

Cela fonctionne principalement bien, mais la navigation via des clés étrangères me cause un vrai mal de tête!

Voici un exemple simplifié ..

Car (tableau)
CarID PK
Couleur
Portes
ManufacturerID FK

Fabricant (tableau)
ManufacturerID PK
Nom

Dans le fichier edmx je peux voir la relation 1-many présentée comme une propriété de navigation dans la voiture aussi bien les tables et le fabricant. Je crée un Models.CarRepository qui me permet de retourner un IQueryable.

À la vue, je souhaite pouvoir afficher le nom du fabricant pour chaque voiture. Ce n'est pas accessible via l'objet que je reçois.

Quelle est la meilleure façon de mettre en œuvre cela? Ai-je rencontré une limitation de la combinaison Entity Framework/MySQL?

Répondre

0

Le chargement rapide des enregistrements associés doit être activé dans le référentiel modèle. Quelque chose comme:

var allCars = from c in automobileEntites.Car.Include("Manufacturer") 
       select c; 

Cela rend ensuite les enregistrements associés disponibles pour une requête/affichage ultérieur.