2016-09-17 39 views
-1

私のLinqコードでストアドプロシージャを呼び出したい。 1つのパラメータだけを使用するとうまくいきますが、複数のパラメータを使用する場合はエラーが表示されます。ここで複数のパラメータを渡してLINQでストアドプロシージャを呼び出す

は、私がやっていることである - この仕事を罰金:

SqlParameter param1 = new SqlParameter("@Value1", val); 
var abc = db.tablename.SqlQuery("SP_Name @Value1", param1).ToList(); 

今、私は2番目のパラメータに

SqlParameter param2 = new SqlParameter("@Value2", val2); 
var abc = db.tablename.SqlQuery("SP_Name @Value1,@Value2", param1, param2).ToList(); 

を追加することがエラーを返します:

An error occurred while reading from the store provider's data reader. See the inner exception for details.

+0

もエラーを共有しますか? – Chandru

+0

"ストアプロバイダのデータリーダーからの読み取り中にエラーが発生しました。詳細については、内部例外を参照してください。 ...まあ、あなたの内なる例外の詳細を教えてください... – W92

+0

これをチェックしてくださいhttp://stackoverflow.com/questions/23976618/how-to-pass-two-parameters-to-call-a-stored-procedure- through-c-sharp-mvc-functi – Chandru

答えて

2

・ホープ、このサンプルコードはあなたを助けます!

var param1 = new SqlParameter(); 
param1.ParameterName = "@Value1"; 
param1.SqlDbType = SqlDbType.Int; 
param1.SqlValue = val1; 

var param2 = new SqlParameter(); 
param2.ParameterName = "@Value2"; 
param2.SqlDbType = SqlDbType.NVarChar; 
param2.SqlValue = val2; 

var result = db.tablename.SqlQuery("SP_Name @Value1,@Value2", param1, param2).ToList(); 
関連する問題