天天看点

[大雾雾雾雾] 告别该死的 EFCore Fluent API (续)

朋友们好啊,

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

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

我说 怎么回事?

给我发了一张截图

[大雾雾雾雾] 告别该死的 EFCore Fluent API (续)

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

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

它们说

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

猫猫你能不能帮帮我 ?

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

我说可以

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

他说 你这也没用

我说 我这有用

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

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

他说要试试

我一说

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

然后上来就是一个 低性能

一个 不合理

一个 真辣鸡!

[大雾雾雾雾] 告别该死的 EFCore Fluent API (续)

我全部防出去了

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

[大雾雾雾雾] 告别该死的 EFCore Fluent API (续)

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

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

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

[大雾雾雾雾] 告别该死的 EFCore Fluent API (续)

我没有大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

    • dotnet add package Riven.EntityFrameworkCore.Oracle

    • Install-Package Riven.EntityFrameworkCore.PostgreSQL

    • dotnet add package Riven.EntityFrameworkCore.DevartOracle

    • Install-Package Riven.EntityFrameworkCore.DevartOracle

  1. 使用驱动
builder.UseRivenPostgreSQL(
  "database connection string"
);
// or
builder.UseRivenPostgreSQL(
  "database connection string",
  (options)=>
  {

  }
);
           
// 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 一把梭 源码仓库

谢谢朋友们!

[大雾雾雾雾] 告别该死的 EFCore Fluent API (续)

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]

目前学习.NET Core 最好的教程

.NET Core 官方教程

ASP.NET Core

官方教程

如果您认为这篇文章还不错或者有所收获,您可以点击右下角的【推荐】支持,或请我喝杯咖啡【赞赏】,这将是我继续写作,分享的最大动力!

作者:玩双截棍的熊猫

声明:原创博客!请在转载时在文章开头注明本人博客地址。如发现错误,欢迎批评指正。凡是转载于本人的文章,不能设置打赏功能,如有特殊需求请与本人联系!