ABP Vnext 5.0 EF6Core适配Oracle 解决方案
新建Abpvnext 5.0版本的项目后发现 数据库处理的项目由原先的两个合并为一个~.EntityFrameworkCore,而AbpVnext 官方更新暂时没有更新Volo.Abp.EntityFrameworkCore.Oracle,只能支持到Volo.Abp [4.0,5.0)版本.
解决方案:
1.删除~.EntityFrameworkCore内的包,只留下 Microsoft.EntityFrameworkCore.Tools
2.引入包 注意查看包依赖
Oracle.EntityFrameworkCore,
Oracle.ManagedDataAccess.Core,
Volo.Abp.AuditLogging.EntityFrameworkCore
3.修改 ~DbContextFactory.cs 内 CreateDbContext 函数内的 Use~(database type) 为 UseOracle
4.修改 ~EntityFrameworkCoreModule.cs 内ConfigureServices 为下方代码:
public override void ConfigureServices(ServiceConfigurationContext context){context.Services.AddAbpDbContext<SmcspDbContext>(options =>{/* Remove "includeAllEntities: true" to create* default repositories only for aggregate roots */options.AddDefaultRepositories(includeAllEntities: true);});Configure<AbpDbContextOptions>(options =>{/* The main point to change your DBMS.* See also SmcspMigrationsDbContextFactory for EF Core tooling. */options.Configure(new Action<AbpDbContextConfigurationContext>(context =>{if (context.ExistingConnection != null){context.DbContextOptions.UseOracle(context.ExistingConnection, new Action<OracleDbContextOptionsBuilder>(optionsBuilder => {optionsBuilder.UseQuerySplittingBehavior(QuerySplittingBehavior.SplitQuery);optionsBuilder.UseOracleSQLCompatibility("11");}));}context.DbContextOptions.UseOracle(context.ConnectionString, new Action<OracleDbContextOptionsBuilder>(optionsBuilder => {optionsBuilder.UseQuerySplittingBehavior(QuerySplittingBehavior.SplitQuery);optionsBuilder.UseOracleSQLCompatibility("11");}));}));});}
至此 Oracle 适配完毕。
按照此方法也可修改适配其他版本的Abp 或 AbpVnext框架。
ABP Vnext 5.0 EF6Core适配Oracle 解决方案相关推荐
- 一、快速搭建ABP Vnext开发环境
关于Abp Vnext框架基础知识,官方文档已有很详细的阐述.此系列文章皆以实例为主,关键地方会包含博主个人的见解,所有的文章皆为原创,并且附带源码. 顺便说一下,我的所有示例均使用angular作为 ...
- Abp vNext 常见问题
Abp vNext 常见问题 创建模块时包含解决方案文件夹 调用需要授权的接口出现 Authorization failed! Given policy has not granted 创建模块时包含 ...
- abp Vnext OpenIddect 扩展微信小程序授权登录
abp vnext6.0之后官方替换了原来的ids4,采用了openIddict的oauth认证框架.使用之前的方法已经不行,以下是OpenIddect 使用ITokenExtensionGrant接 ...
- abp core Oracle,ABP适配Oracle全过程
一.背景 ABP的各类文档在网络上已经非常完善了,唯独缺少与oralce相关的资料,ABP官网也未给出一个较好的Oracle解决方案.正好最近在学习ABP相关知识,对ABP源码结构稍算熟悉,花了些时间 ...
- 2.1.0 Abp vNext 地磅无人值守 接口服务搭建
地磅无人值守项目 系列文章目录 文章目录 前言 一.Domain项目创建实体类 1.创建实体类(该类对应 数据库字段) 2.创建表接口类 二.EntityFrameworkCore项目 1.创建表实现 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 完善与美化,Swagger登场
基于 abp vNext 和 .NET Core 开发博客项目 - 完善与美化,Swagger登场 转载于:https://github.com/Meowv/Blog.git 在程序员界,总有一批强迫 ...
- ABP vNext微服务架构详细教程——身份管理服务
1 框架搭建 ABP vNext创建包含app和module两种模板,其中app方式所创建的模板包含用户.角色.权限管理,ABP基础配置IdentityServer的基础配置数据等功能.module模 ...
- Abp Vnext Vue3 的版本实现
Abp Vnext Pro 的 Vue3 实现版本 开箱即用的中后台前端/设计解决方案 开始 Github地址 文档地址 演示地址 系统功能 [x] 用户管理 [x] 角色管理 [x] 审计日志 [x ...
- ABP Vnext 4.4:统一Ef Core的DbContext/移除EF Core Migrations项目
Abp vnext 4.4出现了一个比较重大的变更:在Startup template中移除了EF Core Migrations项目,本文翻译自community.abp.io/articl 由于本 ...
最新文章
- html excel零不显,Excel数值为0不显示的三种解决方法
- 深度剖析Zabbix Web scenarios数据表结构
- NHibernate配置入门
- Git 将代码回到指定版本
- 背包形动态规划 fjutoj2375 金明的预算方案
- Python连接mysql密码用密文_druid配置数据库连接使用密文密码
- Q142:PBRT-V3,交点处各种微分的求解(三角形,3.6章节)
- java 焦点转移_将焦点移至键Enter上的下一个控件
- Mybatis插件动态数据库链接
- 利用python实现PSM
- 360企业安全校招内推(可免笔试)
- 通过three.js实现3d模型展示
- 以开发之名|线上家装新美学——梦想之家,由你来定
- open judge 1.7.1
- TCP/IP英文缩写汇总
- OpenSSL BIO 自我扫盲
- Unbound服务的安装与运行管理
- vs编译错误:在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include stdafx.h”?
- 【设计模式】-创造篇-单例
- 长微博工具开发者称遭新浪无故封号
热门文章
- Java程序:如何将句子(字符串)中的字母大小写转化
- sunxi:[0]全志SoC启动过程
- 微信公众号怎么生成能追踪效果的二维码?
- FTPClient上传文件storeFile失败,没有异常,切换目录操作可以成功
- 作为Senior Recruiter想跟大家聊聊求职,希望对大家有所帮助~
- 基于android的同学录校友录系统app
- 【中等】Leetcode-旋转链表//题目分析//首尾相连
- 在Docker 上完成对Springboot+Mysql+Redis的前后端分离项目的部署(全流程,全截图)
- Python采集手机4K壁纸,又是一个练手小案例,也不用担心没壁纸换咯
- jni使用(四)-----IDEA中javah生成.h文件