1.EFCoreAppプロジェクトを作成する
VS2019 を使用して、新しいネット コア アプリの空のプロジェクトを作成します。そのプロジェクト構成は次のとおりです。
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<UseWPF>true</UseWPF>
</PropertyGroup>
</Project>
2.EFコアをインストールする
VS ツール -> NuGet パッケージ マネージャーを開き、インターフェイスまたはコマンド ラインを使用して EF Core をインストールします。
検索バーで検索しef core
、インストールする ef core を選択します。
インストールライセンスを受け取るには:
次に sqlite をインストールし、ef core.sqlite を選択してインストールし、ライセンスに同意します。
プロジェクト ファイルを見ると、2 つのパッケージがインストールされていることがわかります。
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<UseWPF>true</UseWPF>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="3.1.4" />
</ItemGroup>
</Project>
3.EFコアの使用
EF Core の非常に重要なクラスは次のとおりです。DbContext
データベース操作を作成するには、このタイプのコードを継承する必要があります。
namespace EFCoreApp.Data
{
public class AppDbContext : DbContext
{
public DbSet<KeyValueTable> KeyValues { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
base.OnConfiguring(optionsBuilder);
optionsBuilder.UseSqlite("Data Source=App.db");
}
}
[Table("KeyValue")]
public class KeyValueTable
{
[Key]
public string Id{ get; set; }
[Column("key")]
public string Key { get; set; }
[Column("value")]
public string Value { get; set; }
}
}
ここでは、DbContext を継承してデータベースに接続しApp.db
、データ テーブルを作成しますKeyValue
。
次に、アプリ起動コールバックでデータベースを作成する必要があります。
namespace EFCoreApp
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
private void App_OnStartup(object sender, StartupEventArgs e)
{
AppDbContext dbContext = new AppDbContext();
dbContext.Database.EnsureCreated();
}
private void App_OnExit(object sender, ExitEventArgs e)
{
}
}
}
起動して実行すると、作成されたデータベース ファイルが表示されます。App.db
データベースを開いて、作成されたデータ テーブルを確認します。
ここまでで、EF Core のインストールと使用の最初の部分は終了しました。次の部分では、データベースに対して一般的な操作 (追加、変更、削除、確認) を実行する方法を見ていきます。
4 プロジェクトアドレス
このプロジェクトのコード アドレスは次のとおりです: DevWiki/EFCoreApp