DapperExtension插入string型主键报错(无法将类型“string”隐式转换为“int”)问题

DapperExtension中插入单条数据的Insert方法返回值为此次插入记录的主键,即如果插入的数据表主键为int类型则返回刚插入数据的int主键,而主键为string或guid类型的数据则返回string或guid类型。

因为之前对DapperExtension不了解,只是复用别人的代码,而代码中只使用了返回值为int类型的记录,所以在我插入主键为string类型的数据时虽然插入成功了,但总是发生报错。
在网上搜索后发现CSDN论坛中有一个插入guid类型时报错的帖子,因为帖子下方的答复总是不着调(一万个郁闷的表情),耐心看到最后发现作者自己解决了并公布了解决方法。为了便于以后回顾或者减少其他人搜寻解决方法的时间,将解决方法和原因记录在博客中。

参考CSDN论坛结贴内容https://bbs.csdn.net/topics/392176552
“ 我知道错误原因了,原来不是主键设置的问题,是返回的时候,我写了Int,它成功插入后,返回的是一个string,天哪,这个也太坑了吧
int insertInt = _IDbConnection.Insert(obj, null);
所以正确的应该这样写:
string insertInt = _IDbConnection.Insert(obj, null);”
感谢作者。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章