2010-09-24 4 views
1

J'ai une classe Application. Entity framework a créé une propriété de navigation appelée Assistants. Quand je cours mon application Web Assistants est rempli pour moi par le cadre.Mappage d'une propriété de navigation à une procédure stockée

J'ai écrit une procédure stockée appelée GetAssistantsByApplicationID. J'ai besoin de mapper cette procédure stockée à la propriété Assistants et lui transmettre le applicationID pour ramener les assistants pour cette application spécifique.

Comment est-ce que je ferais ceci? Est-ce que je le fais de la bonne façon?

Voici mon code de ma classe référentiel pour obtenir l'application spécifique:

public Application GetApplicationByID(int applicationID) 
{ 
    var application = 
     (from a 
     in context.GetApplicationByID(applicationID) 
     select a).FirstOrDefault(); 

    return application; 
} 

Merci

Répondre

3

Quelque chose comme cela devrait fonctionner à cause de quelque chose appelé 'relation Fixup':

public Application GetApplicationAndAssistantsByApplicationID(int applicationID) 
{ 
    var application = 
     (from a 
     in context.GetApplicationByID(applicationID) 
     select a).FirstOrDefault(); 

    // call your other stored procedure... 
    var assistants = context.GetAssistantsByApplicationID(applicationID) 
          .ToArray(); 
    // as the assistants are materialized they will automatically show up 
    // in application.Assistants too. 

    return application; 
} 
Questions connexes