朋友们好啊,

我是 .NET 打工人 玩双截棍的熊猫

刚才有个朋友问我 猫猫发生什么事了

我说 怎么回事?

给我发了一张截图

我一看!嗷!原来是zuo天有两个数据库,

一个四十多岁,一个三十多岁

它们说

有一个说我列名全大写 (全小写),EFCore生成列名区分大小写

猫猫你能不能帮帮我 ?

帮助治疗一下我全大写(全小写)

我说可以

我说你看 [大雾雾雾雾] 告别该死的 EFCore Fluent API

他说 你这也没用

我说 我这有用

这个是反射,.NET 是讲反射的,反射动态调用

2000 年发布的 .NET 都有反射特性的

他说要试试

我说可以

我一说

他 “啪!” 就站起来了,很快啊

然后上来就是一个 低性能

一个 不合理

一个 真辣鸡!

我全部防出去了

防出去以后自然是传统艺能宜点到为止,代码放在了截图里,没复制出来。我笑了一下,准备撤回。

因为这个时候按照传统艺能他已经输了,如果这代码发力,一段就把电脑性能吃满了(雾雾雾)。

他也承认我的类库有点意思,他不知道代码截图已经放到他脸上,他承认我先把代码截图发出来。

我撤回代码截图不打了,他突然袭击大量反射性能低来打我脸。

我没有大E啊,也没有闪。

“啪!”就使出一招 Riven.EntityFrameworkCore 打到他脸上

直接重写 Entity Framework Core 驱动默认实现,从源头解决大小问题。


目前扩展的 EF Core 数据库驱动

  • PostgreSQL
  • Oracle
  • DevartOracle

基本用法

  1. 引入nuget包
  • Postgresql

    • dotnet cli

      dotnet add package Riven.EntityFrameworkCore.PostgreSQL

    • nuget package manager

      Install-Package Riven.EntityFrameworkCore.PostgreSQL

  • Oracle

    • dotnet cli

      dotnet add package Riven.EntityFrameworkCore.Oracle
    • nuget package manager

      Install-Package Riven.EntityFrameworkCore.PostgreSQL
  • DevartOracle

    • dotnet cli

      dotnet add package Riven.EntityFrameworkCore.DevartOracle
    • nuget package manager

      Install-Package Riven.EntityFrameworkCore.DevartOracle
  1. 使用驱动
  • PostgreSQL
builder.UseRivenPostgreSQL(
"database connection string"
);
// or
builder.UseRivenPostgreSQL(
"database connection string",
(options)=>
{ }
);
  • Oracle
// Default SQLCompatibility V11
builder.UseRivenOracle(
"database connection string"
);
// or
builder.UseRivenOracle(
"database connection string",
(options)=>
{
// SQLCompatibility V12
//options.UseOracleSQLCompatibility(OracleSQLCompatibility.V12)
}
);
  • Devart Oracle
var license = ""; // Devart license
builder.UseRivenDevartOracle(
"database connection string",
license
);
// or
builder.UseRivenDevartOracle(
"database connection string",
license,
(options)=>
{ }
);

E.EntityFrameworkCore.Extensions 相比,更底层 / 更原生 / 性能更佳

虽然暂时不支持 E.EntityFrameworkCore.Extensions 的一些功能,但我会往里加的

如果觉得好用的话请 收藏 转发 star fork 一把梭 源码仓库

RivenFx
Riven
玩双截棍的熊猫
EFCore
EF Core
EntityFramework
EntityFrameworkCore

[EF Core Oracle 列名大小写问题]

[EF Core Oracle column name case problem]

[EF Core PostgreSql 列名大小写问题]

[EF Core PostgreSql column name case problem]

[EFCore Oracle 列名大小写问题]

[EFCore Oracle column name case problem]

[EFCore PostgreSql 列名大小写问题]

[EFCore PostgreSql column name case problem]

[entity framework core Oracle 列名大小写问题]

[entity framework core Oracle column name case problem]

[entity framework core PostgreSql 列名大小写问题]

[entity framework core PostgreSql column name case problem]

[大雾雾雾雾] 告别该死的 EFCore Fluent API (续)的更多相关文章

  1. [大雾雾雾雾] 告别该死的 EFCore Fluent API

    [EF Core Oracle  列名大小写问题] [EF Core Oracle column name case problem] [EF Core PostgreSql 列名大小写问题] [EF ...

  2. 微软跨平台ORM框架之EFCore — 约定与属性映射

    EFCore中的约定简单来说就是规则,CodeFirst基于模型的约定来映射表结构.除此之外还有Fluent API.Data Annotations(数据注释) 可以帮助我们进一步配置模型. 按照这 ...

  3. .NetCore中EFCore的使用整理(二)-关联表查询

    EF常用处理关联加载的方式有3中:延迟加载(Lazy Loading).贪婪加载 (Eager Loading)以及显示加载. 一.EF Core  1.1 1.当前的版本,还不支持延迟加载(Lazy ...

  4. EF6&EFCore 注册/使用实体类的正确姿势

    首先回顾下EF中常规使用流程 1.新建实体类以及实体配置(data annotation或fluent api) [Table("Users")] public class Use ...

  5. 基于efcore的分表组件开源

    ShardingCore ShardingCore 是一个支持efcore 2.x 3.x 5.x的一个对于数据库分表的一个简易扩展, 目前该库暂未支持分库(未来会支持),仅支持分表,该项目的理念是让 ...

  6. efcore分表下"完美"实现

    ShardingCore 如何呈现"完美"分表 这篇文章是我针对efcore的分表的简单介绍,如果您有以下需求那么可以自己选择是否使用本框架,本框架将一直持续更新下去,并且免费开源 ...

  7. efcore分表分库原理解析

    ShardingCore ShardingCore 易用.简单.高性能.普适性,是一款扩展针对efcore生态下的分表分库的扩展解决方案,支持efcore2+的所有版本,支持efcore2+的所有数据 ...

  8. EFCore 6.0入门看这篇就够了

    前言 作为一直在dotNet行业耕耘的码农,这几年在大大小小项目中也涉及到了许多ORM框架,比如:EFCore,Dapper,NHibernate,SqlSugar等等,这些ORM都有各自的优缺点,大 ...

  9. EFCore 的 DbFirst 模式

    1 前言 EF6 时代,可以通过界面操作,添加数据库实体. EF Core 需要通过 CLI 来进行该操作,具体请参考EF Core官方文档:反向工程. 2 前置条件 PMC 工具(仅限 Visual ...

随机推荐

  1. JS XMLHttpRequest请求

    前言 我们知道jq的请求非常简短好用,但是其实js原生的请求也不差,并且不用插件更能说明自己本身的技术已经很强了,别人看自己代码一脸懵逼的时候,这时就可以一一解释这些代码的用处,更能让别人敬佩! JS ...

  2. npm install各种命令模式

    npm install 几种命令模式: npm install moduleName 安装模块到项目目录下 npm install -g moduleName npm install -g 将模块安装 ...

  3. Angular双向绑定简单理解

    在使用Antd的时候,一直很好奇里面的双向绑定的自定义组件是怎么做的. 因为之前一直用,没有去细看文档. 今天抽空来简单的撸一下. 在ng中,()是单向数据流,从视图目标到数据源,[()]这样就是双向 ...

  4. c库中sprintf

    用法:sprintf指的是字符串格式化命令,主要功能是把某个数据写入某个字符串中: 我的理解就是,将某个其它类型的数据按着某一格式写入char *a,因此叫格式化命令: 语法: #include< ...

  5. CodeForces 1182E Product Oriented Recurrence

    题意 给定五个整数 \(n,f_1,f_2,f_3,c\),其中数列 \(f\) 满足以下递推式: \[f_x=c^{2x-6}f_{x-1}f_{x-2}f_{x-3} \] 求 \(f_n\). ...

  6. 【漏洞复现】Shiro<=1.2.4反序列化漏洞

    0x01 概述 Shiro简介 Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理.使用Shiro的易于理解的API,您可以快速.轻松地获得任何应用程序,从 ...

  7. Linux下开发环境的搭建(For C++ OIer)

    说句实话,对于OIer来说,Linux真的是个很好的开发平台. 这里既没有游戏的喧嚣,也没有广告的打扰,gcc/g++早已预装,一切已为你准备好......(???)即使对于日常使用,也绰绰有余. 如 ...

  8. JNI-Thread中start方法的调用与run方法的回调分析

    前言 在java编程中,线程Thread是我们经常使用的类.那么创建一个Thread的本质究竟是什么,本文就此问题作一个探索. 内容主要分为以下几个部分 1.JNI机制的使用 2.Thread创建线程 ...

  9. tensorflow-gpu2.1缺少libcudnn.so.7

    下载CUDA对应版本的cuDnn. 下载后在cuDnn/cuda/lib64下有libcudnn.so.7这个文件,把它复制到/usr/local/cuda/lib64/下即可

  10. Chrome默认启动尺寸的小问题

    记录一个小问题. 这是我的Chrome,他默认启动的时候是这样的: 默认启动的尺寸似乎不可调,网上没有相关资料,简直让强迫症患者无所适从,这里记录一下偶然发现的方法: 调整Chrome的尺寸,选择右上 ...