Nachdem ich wild gegoogelt hatte, stieß ich auf die Antwort:EF4 - Die ausgewählte gespeicherte Prozedur gibt keine Spalten zurück
EF kann keine Metadaten von einer gespeicherten Prozedur abrufen, die dynamische Abfragen oder temporäre Tabellen verwendet. Die Lösung bestand darin, entweder den komplexen zurückgegebenen Typ manuell zu erstellen ODER
einzufügenSET FMTONLY OFF
in meiner gespeicherten Proc-Definition. Die Gefahr bei der zweiten Option besteht natürlich darin, dass die gespeicherte Prozedur ausgeführt wird, wenn Visual Studio den Metadatenaufruf ausführt, sodass dies idealerweise nur verwendet wird, wenn die gespeicherte Prozedur nichts ändert.
UPDATE:Eine Alternative besteht darin, sicherzustellen, dass die gespeicherte Prozedur tatsächlich funktioniert. Sie könnten auch eine gespeicherte Dummy-Prozedur erstellen, die die gewünschten Spalten zurückgibt, daran binden und dann die eigentliche Logik ausführen.