オリジナル:ASP.NETの構成EFコアサービスフレームワーク- ASP.NETのコアの基礎チュートリアル-シンプルなチュートリアルで、簡単なプログラミング
ASP.NETコアサービスFramework構成EF
私たちは、基本的な動作原理とEntity Frameworkのを知った前の章では DbContext
、我々は独自に作成しました HelloWorldDBContext
。我々はEFの枠組みを設定する方法について何かを言うだろうこの章では、SQLiteのデータベースにリンクします
EFサービスの構成フレームワーク
起動して実行することができ、当社のDBContext EFの枠組みを作り、我々は、アプリケーションの設定を変更する必要があります
我々はそのように、我々は、データベース接続文字列を追加する必要が HelloWorldDBContext
どのサーバとどのデータベースを照会するために知っています
我々は、次を実行する必要があります。
- これは、JSON内のコンフィギュレーションファイルにデータベース接続文字列を保存します
- 同様に、また、あなたが必要とする
Startup
クラスをConfigureServices
EFサービスメソッドを追加します - EFおよびASP.NET MVCフレームワークやフレームワーク、依存性注入を使用します。注入することができるようにするためには、サービスのEF Frameworkランタイムのさまざまなを使用することを知っておく必要があります
- もちろん、簡単な構成のAPIは、私たちが必要とするすべてのデフォルトのサービスを追加するために使用することができています
さて、行きましょう
ダブルクリックして開きます AppSettings.json
ファイルを、次のデータベース接続文字列を追加します
"データベース" :{
"接続" :"データソース= blogging.db" }
添加が完了した後、AppSettings.json
次のようにファイルの内容全体は、
{
"メッセージ" :"Hello Worldの\ n型ハロー、簡単なチュートリアルでは、あなたのウェブサイトはそれwww.twle.cnある!?" 、 "データベース" :{ "接続" :"データソース= blogging.db" } }
我々は、相対パスを使用している
SQLite
時は、相対パス、本体のアプリケーションに関連付けられたパスを使用します。当社では
HelloWorld
、プロジェクト、メインバイナリがされbin/Debug/netcoreapp2.1/ConsoleApp.SQLite.dll
、そのためのSQLiteデータベースが配置されることになるbin/Debug/netcoreapp2.1/blogging.db
で
次に、我々は、ダブルクリックして開きます Startup.cs
に行き、ファイルを Startup
クラス
私たちはEntity Frameworkのために働くためにいくつかのサービスを追加する必要がありますコア
具体的には、我々は2つのことを実行する必要があります。
- SQLiteのに関連するサービスのEFフレームワークを追加します。
- DBContextのEFフレームワークは、どのクラスを教えて
することができるすべては IServiceCollection
、以下の手順に示すように、延長上に提供される方法を用いて達成
公共のボイドConfigureServices (IServiceCollectionのサービス){ サービス。AddMvc (); サービス。AddEntityFrameworkSqlite () 。AddDbContext < HelloWorldDBContext > (オプション=> オプション。UseSqlite (構成[ "データベース:接続" ]))。}
EFフレームワークおよび非リレーショナルデータベースを含むデータベースの様々なタイプ、との互換性は、我々はEF Entity Frameworkのを指示する必要がありますのでSQLiteの関連サービスを追加
そして、また、あなたが必要とする AddDbContext()
適切なクラスのインスタンスを容易にするように構成することができるフレームワークのアプローチのEFクラスを、私たちに伝えるためにDBContext
AddDbContext()
この方法は、ジェネリック型パラメータを受け入れ、私たちは、指定した DBContext
派生クラスの型を HelloWorldDbContext
では AddDbContext()
、プロセス、私たちは設定する必要があります DBContext
オプションを
設定オプションが可能な ラムダ式が 行われ、私たちは何をする必要があるDBContextフレームEFがUseSqliteを行くを教えています
これまでのところ、我々は、我々は、データベースの移行をデータベースを設定する方法を学びます、EFフレームワークサービス作業が最終的に行われるように構成しました