当使用dapper执行时,要获得返回值

时间:2014-05-21 00:05:11

标签: dapper

请问我会根据执行情况使上面的代码返回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));
    }

1 个答案:

答案 0 :(得分:1)

这完全取决于bool来自哪里。最常见的设置是sproc到select某种输出;如果是这种情况,最合适的做法是使用Query<T>以及Single之类的LINQ操作。例如(也整理参数):

Run(conn => conn.Query<int>("[dbo].[SpecailSpanStartUpdate]",
    new {spanRecord.SpanId}, null,
     Config.CommandTimeout, CommandType.StoredProcedure).Single() != 0);

在这里,我希望第一列中有int的单行,如果true非零则返回int

相关问题