我正在尝试从一个包含SQL Server hierarchyid
类型列的SQL Server 2008 R2数据库中读取数据(也称为SqlHierachyId)。
我想使用这个类与Dapper一起使用:
public class Foo
{
public int Id { get; set; }
public SqlHierarchyId Path { get; set; }
}
例如:connection.Query<Foo>("select 3 as [Id], hierarchyid::Parse('/1/2/3/') as [Path]");
注意:为了能够使用SqlHierarchyId,您需要引用Program Files (x86)\Microsoft SQL Server\110\Shared\Microsoft.SqlServer.Types.dll
如果我运行这段代码,就会出现DataException异常:Error parsing column x (Path=/1/2/3/ - Object)
我尝试通过添加ITypeMap来指定自定义映射器,并在所有接口方法上设置断点以查看传递给它的值,但是从未调用过它。
有什么建议可以让Dapper允许我指定自定义映射器吗?(或者,如果有一个支持所有Sql类型的扩展程序,那也不错)