2009-05-19 9 views
1

Bonjour à tous,Procédure stockée par Linq Problème

Je rencontre un problème avec Linq et mes procédures stockées. L'erreur que j'obtiens est:

Impossible de trouver une implémentation du modèle de requête pour le type de source 'int'. 'Sélectionnez' n'a pas été trouvé.

Voici le code trouvé dans mes DBClasses:

[Function(Name="dbo.findahostel_getHostelsByTags")] 
public IEnumerable<hostel> findahostel_getHostelsByTags([Parameter(DbType="VarChar(150)")] string tags) 
{ 
    IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), tags); 
    return ((IEnumerable<hostel>)(result.ReturnValue)); 
} 

Voici mon code Linq:

IQueryable<hostel> hostels = from h in db.findahostel_getHostelsByTags_Name(searchQuery) 
             select h; 

Je ne peux pas trouver un refrence à un int partout.

Matt

+0

Le compilateur se plaint-il vraiment sur cette ligne de code? Cela semble peu probable pour moi. Si vous passez la souris sur l'appel de la méthode, cela vous indique-t-il le type de retour? –

+0

Salut Jon, j'ai vérifié comme tu l'as dit et tout allait bien; On dirait que c'était un problème de cache avec mon hôte référençant l'ancien fichier. Tous triés maintenant. Merci! – bExplosion

Répondre

2

Je pense que le problème est que vous essayez de jeter result.ReturnValue comme IEnumerable<hostel> et je suis sûr que ReturnValue est un entier. C'est ce que retourne la procédure stockée, qui ne doit pas être confondue avec les lignes qu'un processus stocké "retourne" aussi

+0

Oui, ce serait le bon compagnon; fini par être un problème de cache sur ma fin hoste. – bExplosion

Questions connexes