0

SQLサーバーを使用してAsp.net mvc razarでアプリケーションを開発しています..という名前の列を持つテーブルがありますFname, Mname, lname, dob. FullName, Age次のようなデータを返すストアド プロシージャを作成しました

Select Fname + Mname + LName As FullName, spFunctionReturnAge(dob) As Age
From Customer 

このストアド プロシージャの関数をインポートして作成しましたが、edmx デザイン ビューでストアド プロシージャをインポートすると、FullName 列と age 列を持つエンティティまたはモジュールがありません。

モジュールを追加したり、このストアド プロシージャからすべての行を返すにはどうすればよいですか?

私のストアド プロシージャには行を返す計算があるため、ビューを直接使用することはできません。ストアド プロシージャを使用することによってのみ実行できます。

4

2 に答える 2

0

何らかの理由でパラメーターを渡す必要がない限り、ストアド プロシージャの代わりにビューを使用してみてください。

CREATE VIEW vwCustomer AS
SELECT Fname + Mname + LName As FullName, spFunctionReturnAge(dob) As Age 
FROM Customer

SQL Server からテーブルを参照するすべてではないにしてもほとんどのプログラムは、ビューをテーブルであるかのように認識しますが、ストアド プロシージャの扱いは異なります。

于 2013-03-04T04:22:41.697 に答える
0

カスタム エンティティ クラスを作成し、それをデザイナーの select メソッドに関数にマップする必要があります。デザイナでは、必要に応じて挿入更新機能と削除機能をマップすることもできますが、手順は少し異なります。

select メソッドについては、http: //www.robbagby.com/entity-framework/entity-framework-modeling-select-stored-procedures/を参照してください。

その他すべて (更新の挿入と削除) については、http://msdn.microsoft.com/en-us/data/gg699321.aspxを参照してください。

于 2013-03-04T05:30:15.333 に答える