Dapper - Sql 到 Object 从字符串到 int 的隐式转换
我正在使用 dapper,并且在将字符串值从 db 转换为 int 时遇到问题。有没有人重写 TypeMap 来实现这一点?
任何建议都会很棒。
I'm using dapper and am having issues with casting a string value from the db to an int. Has anyone overriden the TypeMap to allow for this?
Any suggestions would be great.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Dapper 对它映射的类型很挑剔。这可以保护您免受以后出现的各种令人讨厌的错误的影响。
例如,您的数据库可能返回:
010hello
10a10
374837483748374837483748374834784378437438743874384738473
没有明确的操作过程将此类内容映射到
Int32
也就是说,您可以使用 dapper 遵循两种不需要更改 IL 生成的策略。
选项 1:影子属性
选项 2,在 SQL 中进行转换
没有干净的方法来扩展 Dapper 中的映射功能,如果这样做,您将需要将我们随时间添加的任何修复程序合并到本地副本。
Dapper is picky about the types it maps. This protects you from all sorts of nasty errors that pop up later.
For example, your db could return:
010hello
10a10
374837483748374837483748374834784378437438743874384738473
There is no clear course of action for mapping this kind of stuff to an
Int32
That said, there are two strategies you can follow with dapper that do not require changes to IL generation.
Option 1: Shadow property
Option 2, cast in SQL
There is no clean way to extend the mapping functionality in Dapper, if you do so you will be stuck needing to merge any fixes we add over time to your local copy.