位置: 编程技术 - 正文

使用ef6创建oracle数据库的实体模型遇到的问题及解决方案(oracle创建emp表)

发布时间:2024-02-27

推荐整理分享使用ef6创建oracle数据库的实体模型遇到的问题及解决方案(oracle创建emp表),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:oracle创建pfile,ef创建表,ef创建表,ef连接oracle,ef连接oracle,ef创建数据库,ef创建表,ef oracle,内容如对您有帮助,希望把文章链接给更多的朋友!

解决方案中的数据层项目最初使用的是oracle g + ef5 创建的实体模型,在分页时遇到了skip参数为0报错的问题,没有找到相关资料。

于是决定升级到ef6,在oracle官网中得知,Oracle Data Provider for .NET in ODAC c Release 3 开始支持ef6( EntityFramework 6 +Oracle.ManagedDataAccess +Oracle.ManagedDataAccess.EntityFramework,都安装最新稳定版。

安装后app.config和web.config都会被加入如下配置项

注意 entityFramework和 system.data中的版本号,nuget安装后自动生成的一般没问题,我在安装之前把网上找的资料里的配置项放在里面了,但是版本号不一致,程序启动不了,一直没注意到版本号,

找了好一会才发现是这两个地方。

3.然后就可以添加实体模型了。此时如果vs中显示找不到与ef6 兼容的实体框架提供程序,需要将配置文件中的ef节的 <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />删掉或者注释掉,保存后再重新尝试添加实体模型。

使用ef6创建oracle数据库的实体模型遇到的问题及解决方案(oracle创建emp表)

添加实体模型时需要先不选择数据库里的表,即生成空模型,然后打开edmx文件,在模型浏览器中选中实体模型,在属性中把DDL生成模板改成SSDLToOracle.tt (VS),数据库生成工作流改成Generate Oracle Via T4 (TPT).xaml (VS)。

这么做的原因是如果DDL生成模板使用默认项SSDLToOracle.tt ,oracle中的number(1,0)和number(2,0)类型的字段生成的实体属性的类型会是int,然后运行的时候报映射不匹配的错误(错误代码)。

报错原因是oracle从ODP.NET .1.0.2开始为ef6采用新的默认类型映射,官网说明 New Default Mappings 段。

SSDLToOracle.tt模板生成的属性的类型是number(1,0)对应boolean,number(2,0)对应byte,这个对应关系与新映射是一致的。

附上ef5的映射

Oracle Type Default EDM Type Custom EDM Type Number(1,0) Int bool Number(2,0) to Number(3,0) Int byte Number(4,0) Int Int Number(5,0) Int Int Number(6,0) to Number(9,0) Int Int Number(,0) Int Int Number(,0) to Number(,0) Int Int Number(,0) Int Decimal

总结

以上所述是小编给大家介绍的使用ef6创建oracle数据库的实体模型遇到的问题及解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对积木网网站的支持!

angular之ng-template模板加载 本文介绍了angular之ng-template模板加载,分享给大家,具体如下:html5中的templatetemplate标签的含义:HTMLtemplate元素是一种用于保存客户端内容的机制,该

js定时器+简单的动画效果实例 1.向下滑动!DOCTYPEhtmlhtmllang="en"headmetacharset="UTF-8"title向下滑动/titlestylebody{margin:0px;}#show{width:px;/*高度为0*/height:px;background-color:lightcoral;margin:0auto;/*设

javascript实现电脑和手机版样式切换 本文实例为大家分享了javascript实现电脑和手机版样式切换的具体代码,供大家参考,具体内容如下!DOCTYPEhtmlhtmlheadmetacharset="UTF-8"title/titlestyletype="text/css"

标签: oracle创建emp表

本文链接地址:https://www.jiuchutong.com/biancheng/369762.html 转载请保留说明!

上一篇:微信小程序倒计时功能实现代码(微信小程序倒计时乱跳)

下一篇:angular之ng-template模板加载

  • 企业所得税损益结转
  • 非营利组织免税资格怎么认定
  • 累计减税费用是什么意思
  • 物业公司收款一般多久
  • 虚增成本300万财务人员责任
  • 电子税务局助信码领取后怎么用
  • 房地产开发企业预缴增值税
  • 机动车销售发票怎么抵扣
  • 营改增后建筑公司账务处理
  • 个税专项扣除如何迁移
  • 收到银行退回的银行汇票多余款
  • 股权投资损失该如何做账务处理及税前扣除相关规定
  • 12月份的收入1月份开具发票,报税时免税吗
  • 净资产出资属于货币出资吗
  • 案例分析一般纳税人的税负率怎么计算?
  • 公司如何向税务部门举报
  • 增值税申报金额含税吗
  • 继承的房产出售要交20%是全额还是差额
  • 无偿赠送不得抵扣吗?
  • 迁出注销类别怎么写
  • 减少注册资本金程序
  • 下属单位或者其他单位和个人的车辆
  • 全年一次性奖金税率表
  • 公司之间往来借款利息怎么记账
  • java开发主流框架
  • androirc下载
  • 如何将iphone照片导入电脑里
  • 支付的费用没有发票能入费用科目吗
  • 不确认收入要结转成本吗
  • 现金长款和短款怎么处理
  • 在海洋里游泳
  • 汇兑损益计入哪里
  • 成本类账户期末余额在借方还是贷方
  • 微信小程序获取地理位置
  • 基于opencv的人脸检测算法
  • 深度学习论文精读[6]:UNet++
  • 30多岁应该怎么说
  • 编程 开发
  • 车船税每年都要多少钱
  • 结转坏账准备是什么意思
  • 报废产品需要入库吗
  • 财务报销中的冲销是啥意思
  • 在pycharm中配置python
  • 企业资产的范围
  • 浅谈php设计模式的理解
  • mysql从一张表更新到另一张表
  • 什么叫现金流量表举例说明
  • 财务报表怎么重新编制
  • 股权激励税务处理方案
  • 出口退税中的免税是什么
  • 企业所得税申报错误怎么更改
  • access2016备注型
  • sql server 2008怎么使用sql语句
  • 2021新旧会计准则
  • 房产税的计算方式
  • 分期收款发出商品是什么意思
  • 增值税专用发票查询系统官方网站
  • 安全生产费会计核算办法
  • 党费返还款怎么做分录
  • 公司市场部门有什么职位
  • 处置子公司利润表怎么合并
  • 固定资产更新改造当月是否计提折旧
  • 购房发票可以开专票
  • SQL Server Alwayson添加监听器失败的解决方法
  • MySQL 5.6 中 TIMESTAMP有那些变化
  • mysq删除数据库
  • 微软官方操作系统叫什么
  • centos安装问题
  • VirtualBox虚拟机中文免费
  • winload是什么
  • xp系统个性化
  • dreamweaver是干嘛的
  • qqlogin.exe是什么进程 qqlogin.exe应用程序错误解决办法
  • win7纯净版和正版区别
  • button button button
  • n归档是什么软件
  • js文字循环滚动代码
  • javascript常用类型
  • javascript模块化
  • 差额征收怎么填报表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号