J'essaie de lier un gridview à une requête linq to sql qui utilise une procédure stockée. Lorsque je cours la page, j'obtiens l'erreur suivante:L'obtention de 'Source de données est un type invalide' lors de la liaison Linq query to Gridview
La source de données est un type non valide. Il doit s'agir d'une source IListSource, IEnumerable ou IDataSource.
var db = new TableItemDataContext();
var q = db.sp_SearchForItems("1","2","3","4");
GridView1.DataSource = q;
GridView1.DataBind();
Une idée?
Merci pour la réponse rapide! J'ai utilisé ToList() et je n'ai pas eu d'intellisense (mais j'ai utilisé System.Linq) et quand compilé, "int" ne contient pas de définition pour 'ToList' et pas de méthode d'extension 'ToList' acceptant un premier argument de type int pourrait être trouvé. " Des idées? –
Linq ne doit pas pouvoir déterminer le schéma de la table renvoyée par votre procédure stockée et pense qu'il renvoie un int. Je sais qu'il existe des problèmes avec les procédures stockées qui contiennent des tables temporaires. Lien vers la question dans le prochain commentaire ... – tvanfosson
http://stackoverflow.com/questions/521736/stored-procedure-linq-dmbl-file-unable-to-interpret-the-result-set - si vous pouvez l'obtenir pour fonctionner, il peut être en mesure de prendre la requête directement sans le ToList(). – tvanfosson