为什么在Dapper自定义TypeHandler中没有调用SetValue?

时间:2016-09-10 22:46:39

标签: c# .net dapper

我正在使用 Dapper 1.50.2 并指定了以下TypeHandler

public class GuidHandler : SqlMapper.TypeHandler<Guid>
{
    public override void SetValue(IDbDataParameter parameter, Guid value)
    {
        // My Custom logic
    }

    public override Guid Parse(object value)
    {
        return Guid.Parse(value.ToString());
    }
}

然后我注册:

SqlMapper.AddTypeHandler(new GuidHandler());

即使从数据库读取时正确调用了Parse,但是在写入数据时,SetValue永远不会被调用。

我尝试使用与 Guid 不同的类型,但行为相同。

知道发生了什么事吗?

0 个答案:

没有答案