我使用
SqlMapper.AddTypeHandler
来让 Dapper 解决某些列类型,但后来我必须同时使用两个数据库连接,并且数据库不同,因此列类型也不同。类型处理程序对于一个数据库是必需的,但我不希望它们用于另一个数据库。
有没有办法让不同的 Dapper 实例使用不同的类型处理程序集?
我还没有尝试过这一点,但您可以重置类型处理程序并根据您的目的添加类型处理程序。比如:
SqlMapper.ResetTypeHandlers();
SqlMapper.AddTypeHandler(myPurpose1TypeHandler);
connection1.QueryAsync(...);
...
SqlMapper.ResetTypeHandlers();
SqlMapper.AddTypeHandler(myPurpose2TypeHandler);
connection2.QueryAsync(...);
我不知道它会如何表现。