2017-09-13 18 views
-3

ストアプロシージャをコールしていますが、ストアプロシージャからの戻り値を保存できません。 私のコードは次のとおりです。ストアプロシージャの結果を取得

var data = db.Database.SqlQuery<rig>("exec rig_create @cid @name @crane @bop", param1, param2, param3, param4).FirstOrDefault(); 

は、次のエラーを取得しています:

System.Data.SqlClient.SqlException: 'Incorrect syntax near '@name'.'

おかげ

+1

SSMS出力でrig_createを実行するのは何ですか?あなたのコードを動作させるには、 'rig'がマップされているテーブルに一致する列を持つ単一の結果セットを出力する必要があります。 –

答えて

0

はあなたのパラメータ@cid @name @crane @bop

の間にカンマを追加パラメータexec rig_create @cid, @name, @crane ...

+0

私はSystem.Data.Entity.Core.EntityCommandExecutionExceptionエラーを出してみました: 'データリーダーが指定された' omciModel.rig 'と互換性がありません。タイプのメンバー 'id'には、同じ名前のデータリーダーに対応する列がありません –

+0

@Rohitsharmaそれは別の話ですが、私はあなたの質問に答えてくれたと思います。 –

+0

私は今すぐカンマを追加しましたが、今このエラーが発生しています –

0

の間にカンマを使用してみてくださいこのようにする必要があります---->@cid, @name, @crane, @bop

+0

System.Data.Entity.Core.EntityCommandExecutionExceptionエラーが発生しました: 'データリーダーが指定された' omciModel.rig 'と互換性がありません。型 'id'のメンバには、同じ名前のデータリーダーに対応する列がありません。 –