Après avoir cherché furieusement sur Google, je suis tombé sur la réponse :EF4 - La procédure stockée sélectionnée ne renvoie aucune colonne
EF ne peut pas obtenir de métadonnées à partir d'un proc stocké qui utilise des requêtes dynamiques ou des tables temporaires. La solution consistait soit à créer manuellement le type complexe renvoyé OU à mettre
SET FMTONLY OFF
dans ma définition de proc stockée. Le danger avec la deuxième option, bien sûr, est que la procédure stockée sera exécutée lorsque Visual Studio exécute l'appel de métadonnées, donc cela ne serait idéalement utilisé que si la procédure stockée ne change rien.
MISE À JOUR :une alternative consiste à s'assurer que la procédure stockée fonctionne réellement. Une autre chose que vous pouvez faire est de créer une procédure stockée factice qui renvoie les colonnes que vous voulez, de vous y lier, puis de faire la logique réelle.