2015-10-06 18 views
5

私は、これは私のコードの断片である、必須のパラメータを持つストアドプロシージャ@idProject必須パラメータ、DapperのとSystem.Data.SqlClient.SqlException

を呼び出すためにDapperを使用しています:

using (var c = _connectionWrapper.DbConnection) 
     { 
     var result = c.Query<Xxx>("dbo.xxx_xxxGetPage", new { @idProject = 1 }).AsList(); 
     return result; 
     } 

作業をする必要がありますが、

System.Data.dllで 'System.Data.SqlClient.SqlException'タイプの例外が発生しましたが、ユーザーコードで処理されませんでした

追加情報:プロシージャまたは関数 'xxxGetPage' は、パラメータ '@idProject'が指定されていますが、これは指定されていません。

なぜ?

+1

'@'を削除し、それが動作するかどうかを確認。 –

答えて

3

は、私はあなたがCommandTypeが欠けていると思います。

using (var c = _connectionWrapper.DbConnection) 
{ 
    var result = c.Query<Xxx>("dbo.xxx_xxxGetPage", new { idProject = 1 }, commandType: CommandType.StoredProcedure).AsList(); 
    return result; 
} 

デフォルトでは、ダッパーはテキストを使用します。

https://github.com/StackExchange/dapper-dot-net

+0

右、私の悪い...ありがとう – InferOn

0

はこれを試してみてください。

var result = c.Query<Xxx>("dbo.xxx_xxxGetPage", new {1}).AsList(); 
関連する問題