朋友們好啊,
我是 .NET 打工人 玩雙截棍的熊貓
剛才有個朋友問我 貓貓發生什麼事了
我說 怎麼回事?
給我發了一張截圖
我一看!嗷!原來是zuo天有兩個資料庫,
一個四十多歲,一個三十多歲
它們說
有一個說我列名全大寫 (全小寫),EFCore生成列名區分大小寫
貓貓你能不能幫幫我 ?
幫助治療一下我全大寫(全小寫)
我說可以
我說你看 [大霧霧霧霧] 告別該死的 EFCore Fluent API
他說 你這也沒用
我說 我這有用
這個是反射,.NET 是講反射的,反射動態呼叫
2000 年釋出的 .NET 都有反射特性的
他說要試試
我說可以
我一說
他 “啪!” 就站起來了,很快啊
然後上來就是一個 低效能
一個 不合理
一個 真辣雞!
我全部防出去了
防出去以後自然是傳統藝能宜點到為止,程式碼放在了截圖裡,沒複製出來。我笑了一下,準備撤回。
因為這個時候按照傳統藝能他已經輸了,如果這程式碼發力,一段就把電腦效能吃滿了(霧霧霧)。
他也承認我的類庫有點意思,他不知道程式碼截圖已經放到他臉上,他承認我先把程式碼截圖發出來。
我撤回程式碼截圖不打了,他突然襲擊大量反射效能低來打我臉。
我沒有大E啊,也沒有閃。
“啪!”就使出一招 Riven.EntityFrameworkCore 打到他臉上
直接重寫 Entity Framework Core 驅動預設實現,從源頭解決大小問題。
目前擴充套件的 EF Core 資料庫驅動
- PostgreSQL
- Oracle
- DevartOracle
基本用法
- 引入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
- dotnet cli
-
DevartOracle
- dotnet cli
dotnet add package Riven.EntityFrameworkCore.DevartOracle
- nuget package manager
Install-Package Riven.EntityFrameworkCore.DevartOracle
- dotnet cli
- 使用驅動
- 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 一把梭 原始碼倉庫