0

目標

複雑な型のそれぞれの列を取得したい。

問題

この回答とは異なり、marc_s によるパート(4) (4)では、私の複合型にはデータベース列が割り当てられていません。

例を挙げると:

例

そして、あなたが尋ねる前に、私の関数のインポートは正しいです:

例 2

それで、私は何をしなければなりませんか?

更新 1

プロパティを手動で複合型に追加しようとしましたが、それが最善の方法ですか?

更新 2

前に投稿した例のように、複合型にスカラー プロパティを自動的に追加したいと考えています。

4

2 に答える 2

2

@chiefGui私はあなたの質問を完全に理解していませんでしたが、「列情報の取得」ボタンをクリックしても列が表示されないようです。

それが問題である場合は、手順にコマンドを追加することで修正できます。

このようにコマンドを入れます。

ALTER PROC ProcName  /* ([,parameters] ) */
AS
BEGIN
    /* this command you make the difference */
    SET FMTONLY OFF

    /* other code here */
END

これをプロシージャ内の最初の行に入れます。EDMX からプロシージャを削除し、再度追加して、インポートを再試行してください。そして、プロシージャによって返されたすべての列を取得します。したがって、ステップバイステップでうまく機能します。

これがあなたが望む答えでない場合は、コメントを追加してください。私があなたを助けることができます.

編集済み

これは、EF が結果データを取得せずに列ヘッダーを取得しようとするために発生します。プロシージャが非常に複雑な場合、コードが実行前に構造をチェックするように設定されている場合、EF は情報を取得することしかできません。

于 2013-06-13T14:09:20.123 に答える