ASP .net Core MVCモデルを用いてWeb APIを作っています。  
そこでデータベースへの接続をしてSQLを発行したりプロシージャを実行したりしたいです。  
私は今までODP.netを使ってOracleデータベースとのConnectionを貼ってSQLを書いたりしていました。  
ただASP .net Core MVC関連の情報を調査しているとEntity Frameworkというものを使っているものが多いです。  
ちょっとだけ触ってみたのですが、かなり準備が面倒でした。  
保守性が高いというのは分からなくもないですが、開発効率が良いというは謎です。  
個人的にはパッとConnectionを貼ってSQLを自由に記載できるODP.netのが良いです。

どちらを使うのがベターなのでしょうか。
CC BY-SA 4.0
2022-01-13T13:46:11.893
85671
2022-01-14T03:36:59.790
2022-01-14T02:58:21.853
22665
40183
question
c# .net oracle asp.net-core entity-framework
ASP .net Core MVCでのDB接続 Entity Frame か ODP.net
ODP.NET + Dapper なんて選択肢も。

「データ ポイント - Dapper、Entity Framework、およびハイブリッド アプリ」  
<https://docs.microsoft.com/ja-jp/archive/msdn-magazine/2016/may/data-points-
dapper-entity-framework-and-hybrid-apps>[  
](https://docs.microsoft.com/ja-jp/archive/msdn-magazine/2016/may/data-points-
dapper-entity-framework-and-hybrid-apps)  
Stack Overflow の方が作ったんですね。

自分も使ってみましたが非常に使い勝手がよかったです。  
SQL ゴリゴリ書いてきた人にはいいんじゃないでしょうか。
CC BY-SA 4.0
2022-01-13T23:15:08.087
85674
2022-01-13T23:15:08.087
50741
85671
answer
> どちらを使うのがベターなのでしょうか。  
>  保守性が高いというのは分からなくもないですが、開発効率が良いというは謎です。

質問者さんの経験・知識・スキルとかその他の特殊事情はちょっと置いといて、開発効率と保守性の両方を考えて Entity Framework 一択です。

EF Code First を利用しての DB の生成、既存の DB
の場合はリバースエンジニアリングでコンテキストクラスとエンティティクラスの自動生成、スキャフォールディング機能を使って CRUD するための
Controller / View のコード一式の自動生成、Microsoft
のチュートリアル（一例下記）を始めとするネット・書籍などの情報その他を考えてみれば分かると思います。

パート 4、ASP.NET Core MVC アプリにモデルを追加する  
[https://docs.microsoft.com/ja-jp/aspnet/core/tutorials/first-mvc-app/adding-
model?view=aspnetcore-6.0&tabs=visual-studio](https://docs.microsoft.com/ja-
jp/aspnet/core/tutorials/first-mvc-app/adding-
model?view=aspnetcore-6.0&tabs=visual-studio)

ASP.NET Core MVC と EF Core - チュートリアル シリーズ  
<https://docs.microsoft.com/ja-jp/aspnet/core/data/ef-
mvc/?view=aspnetcore-5.0>
CC BY-SA 4.0
2022-01-14T02:10:11.520
85678
2022-01-14T03:36:59.790
2022-01-14T03:36:59.790
43387
43387
85671
answer