当前位置: 首页 > news >正文

兴义市住房城乡建设局网站电销系统开发

兴义市住房城乡建设局网站,电销系统开发,深圳软件项目定制开发费用,网页搜索排名分析为什么说是最佳实践呢#xff1f;因为在实际开发中踩坑了#xff0c;而且发现网上大多数文章给出的解决方法都不能很好地解决问题。尤其是在获取类型为OracleDbType.RefCursor#xff0c;输出为#xff1a;ParameterDirection.Output数据的时候。网上千篇一律的说写一个Ora… 为什么说是最佳实践呢因为在实际开发中踩坑了而且发现网上大多数文章给出的解决方法都不能很好地解决问题。尤其是在获取类型为OracleDbType.RefCursor输出为ParameterDirection.Output数据的时候。网上千篇一律的说写一个OracleDynamicParameters的扩展。但是给出的代码 OracleDynamicParameters中对于Get方法都没有贴出代码或者Get方法的书写存在一定的问题。这就导致了如果你执行一个Oracle存储过程并且获取OracleDbType.RefCursor类型的输出值的时候就会爆“OracleDbType无法转换成CLR类型”的问题。具体的异常提示这里就不截图了大致就是需要进行一下OracleDbType 到CLR类型的一个转换。作者依乐祝原文链接https://www.cnblogs.com/yilezhu/p/10791877.htmlDapper的DynamicParameters不支持游标类型如果你用Dapper来进行Oracle的存储过程的操作刚好这个存储过程需要传入一个游标类型的输出值如下所示你会发现在DbType中是不包含游标类型的。var p new DynamicParameters();p.Add(foo, bar);p.Add(baz_cursor, dbType: DbType.?(没有游标类型) , direction: ParameterDirection.Output);自定义OracleDynamicParameters来支持游标类型不知道大家还有咩有印象我在2018年的时候曾经翻译了一篇关于在.NET Core中使用Dapper操作Oracle的文章没有印象的可以点击链接查看下[译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了。这篇文章是翻译的里面有一个OracleDynamicParameters的扩展方法的代码具体的代码大家可以点击上面的链接进行查看使用这个OracleDynamicParameters进行Oracle存储过程的查询是不会有问题的而且也支持包含OracleDbType.RefCursor类型的存储过程的执行。因为它在Add参数的时候传入的是数据类型是OracleDbType类型如下所示因此这里我们可以在添加参数的时候传入游标类型了。如下所示但是这时候如果这个游标类型是输出参数这时候你如果通过下面这种方式来直接获取的话就会爆我们文章开头的错误了。异常的大概意思就是“返回的是OracleDbType类型没法直接转换成CLR类型如上面的int类型”。解决异常问题既然知道了异常的问题那么接下来我们就需要解决这个问题了。大概的解决思路也就是重新实现下GetT方案在获取数据的时候执行下OracleDataType到CLR类型的转换。可能这个对大伙有点难度但是别担心我们有GayHub因此我在GayHub上果然找到了现成的实现具体的代码可以点这里查看 这里实现的OracleDynamicParameters比我们实现的更强大功能也更丰富。同时也实现了GetT方法的转换。如下图所示同时作者也发布了Nuget包来让你远离996.使用方式如下然后在文件中引入Dapper.Oracle的明明空间就可以了。同时此项目的GitHub地址有必要贴一下https://github.com/DIPSAS/Dapper.Oracle正如作者所说此程序集添加了对编写Oracle特定SQL的支持该SQL支持Oracle托管提供程序对参数使用的所有DbType支持对命令设置各种属性lobfetchsize、arraybindcount、bindbyname以及对参数设置collectiontype。使用此包现在可以运行返回refcursor的存储过程或者使用数组绑定计数来执行带有参数数组的SQL语句。最后今天给大家分享了一个我们.NET Core中使用Dapper操作Oracle存储过程遇到的坑同时给出了个人认为是最佳实现的解决方法。希望对大家有所帮助。Dapper是一个好的工具可以让你编写高性能的数据库操作代码。但是有时在对Oracle的支持上可能有一些欠缺这时候就有一批乐于分享甘于贡献的编程爱好者来分享优秀的扩展来让我们远离996.最后的最后也呼吁大家一起来分享为.NET Core社区贡献一份力。我是依乐祝我为自己带盐有兴趣的小伙伴可以扫码下方二维码关注我的公众号不定期分享.NET Core实战技巧。
http://www.pierceye.com/news/156256/

相关文章:

  • 网站域名注册多少钱搜索引擎优化工具深圳
  • 学建设网站去哪里学建网站要大约多少钱
  • 网站正则表达式怎么做网站维护一般需要多久
  • 北京网站优化价格有没有做花卉种子的网站啊
  • 资源型网站建设 需要多大硬盘vi设计方案模板
  • 网站怎么做图片放映效果代码怎么生成网站
  • 怎么写代码做网站建投商务网官网
  • 江西那家做网站公司好各类网站建设
  • 做网站和服务器的大小有关吗it培训课程
  • 湖南网站建设公司 搜搜磐石网络网站推广模板
  • 网站是软件吗页网站设计
  • 网站服务器搭建及配置的具体步骤如果自己制作网站
  • 湖北餐饮网站建设做排版的网站
  • 广东省建设教育协会官方网站首页世界上最有趣的网站
  • 平面构成作品网站手机网页qq登录
  • 厦门app开发网站开发公司电话重庆网站排名外包
  • 个人备案经营网站用自己网站做邮箱域名解析
  • 为什么大公司开发网站做英文网站网站犯法吗
  • 大连网站seo陇西网站建设公司
  • 电力建设工程质监总站网站域名使用费用一年多少钱
  • 建设单位网站经费请示上海外国语大学学风建设网站
  • 优秀网站管理员wordpress淘宝客模板下载
  • 广州越秀区网站建设手工制作简单又漂亮
  • 西安商城网站开发网站建设前台后台教程
  • 网站投放天津塘沽爆炸事件
  • 360网站安全检测自己买个服务器做网站
  • 临汾市网站建设网站版式分类
  • 广东的一起(17)做网站东莞建工集团企业网站
  • 最佳外贸英文网站模板六安网站设计公司
  • 为啥网站打开速度慢备案域名怎么弄