私は上記のコードが実行に基づいてboolを返すようにします。だから私は呼び出し元のメソッドに戻ることができます。
public void UpdateSpanStartDate(SpanRecord spanRecord)
{
Run(conn => conn.Execute("[dbo].[SpecailSpanStartUpdate]",
new DynamicParameters(new Dictionary<string, object>
{
{"SpanId", spanRecord.SpanId},
}), null,Config.CommandTimeout, CommandType.StoredProcedure));
}
それは、 bool
がどこから来るのかに完全に依存します。最も一般的な設定は、sprocが何らかの出力をselect
ことです。これが当てはまる場合、最も適切なことは、 Single
などのLINQ操作と共にQuery<T>
を使用することです。たとえば(パラメータを整理する)
Run(conn => conn.Query<int>("[dbo].[SpecailSpanStartUpdate]",
new {spanRecord.SpanId}, null,
Config.CommandTimeout, CommandType.StoredProcedure).Single() != 0);
ここでは、最初の列にint
を持つ単一の行があるとint
していますint
がゼロ以外の場合はtrue
返します。