EF Core - Cài đặt Entity Framework Core

Cài đặt Entity Framework Core

Entity Framework Core có thể được sử dụng với các ứng dụng dựa trên .NET Core hoặc .NET Framework 4.6. Ở phần này, bạn sẽ tìm hiểu cách cài đặt và sử dụng Entity Framework Core 2.0 trong các ứng dụng .NET Core bằng Visual Studio 2017.

EF Core không phải là một phần của .NET Core và .NET Framework tiêu chuẩn. Nó là một gói NuGet. Bạn cần cài đặt các gói NuGet cho hai thành phần sau đây để sử dụng EF Core trong ứng dụng của bạn:

  1. Trình cung cấp cơ sở dữ liệu của EF Core.
  2. Công cụ EF Core.

Cài đặt trình cung cấp cơ sở dữ liệu của EF Core

Như đã đề cập trong phần trước, EF Core cho phép chúng ta truy cập cơ sở dữ liệu thông qua mô hình trình cung cấp.

Có các trình cung cấp cơ sở dữ liệu EF Core cho các cơ sở dữ liệu khác nhau. Các trình cung cấp này có sẵn dưới dạng các gói NuGet.

Trước tiên, chúng ta cần cài đặt gói NuGet cho trình cung cấp cơ sở dữ liệu mà chúng ta muốn truy cập. Ở đây, chúng tôi muốn truy cập cơ sở dữ liệu MS SQL Server, vì vậy chúng tôi cần cài đặt gói NuGet Microsoft.EntityFrameworkCore.SqlServer.

Để cài đặt gói NuGet của trình cung cấp DB, bạn nhấp chuột phải vào dự án trong Solution Explorer trong Visual Studio và chọn Manage NuGet Packages.. (hoặc chọn trên menu: Tools -> NuGet Package Manager -> Manage NuGet Packages For Solution).

Cài đặt Entity Framework Core

Điều này sẽ mở giao diện trình quản lý gói NuGet. Nhấp vào tab Browse hoặc tab Updates và tìm kiếm Microsoft.entityframeworkcore trong hộp tìm kiếm ở góc trên cùng bên trái, như hình ảnh bên dưới.

Cài đặt Entity Framework Core

Chọn trình cung cấp cho cơ sở dữ liệu bạn muốn truy cập. Trong trường hợp này, chọn Microsoft.EntityFrameworkCore.SqlServer cho MS SQL Server như hình trên. (đảm bảo rằng nó có logo .NET và tác giả là Microsoft). Nhấp vào Install để bắt đầu cài đặt.

Cửa sổ xem trước hiển thị danh sách các gói sẽ cài đặt trong ứng dụng của bạn. Xem lại các thay đổi và nhấp vào OK.

Cài đặt Entity Framework Core

Cuối cùng, chấp nhận các điều khoản cấp phép liên quan đến các gói sẽ được cài đặt.

Cài đặt Entity Framework Core

Điều này sẽ cài đặt gói Microsoft.EntityFrameworkCore.SqlServer. Kiểm tra nó trong Dependencies -> NuGet, như hình ảnh bên dưới.

Cài đặt Entity Framework Core

Lưu ý: gói NuGet của trình cung cấp cũng đã cài đặt các gói phụ thuộc khác như Microsoft.EntityFrameworkCore.RelationalSystem.Data.SqlClient.

 

Ngoài ra, bạn cũng có thể cài đặt gói NuGet của trình cung cấp bằng Package Manager Console. Chuyển đến Tools -> NuGet Package Manager -> Package Manager Console và thực hiện lệnh sau để cài đặt gói trình cung cấp SQL Server:

PM> Install-Package Microsoft.EntityFrameworkCore.SqlServer

Cài đặt công cụ của EF Core

Cùng với gói trình cung cấp DB, bạn cũng cần cài đặt các công cụ EF để thực thi các lệnh EF Core.

Điều này giúp dễ dàng thực hiện một số nhiệm vụ liên quan đến EF Core trong dự án của bạn tại thời điểm thiết kế, chẳng hạn như chuyển đổi, scaffolding, v.v.

Công cụ EF có sẵn dưới dạng các gói NuGet. Bạn có thể cài đặt gói NuGet cho các công cụ EF tùy thuộc vào nơi bạn muốn thực thi các lệnh: sử dụng Package Manager Console (phiên bản PowerShell của các lệnh EF Core) hoặc sử dụng dotnet CLI.

Cài đặt công cụ EF Core cho PMC

Để thực thi các lệnh EF Core từ Package Manager Console, hãy tìm kiếm gói Microsoft.EntityFrameworkCore.Tools từ NuGet UI và cài đặt nó như hình ảnh bên dưới.

Cài đặt công cụ của EF Core

Điều này sẽ cho phép bạn thực thi các lệnh EF Core cho scaffolding, chuyển đổi, vv trực tiếp từ Package Manager Console (PMC) trong Visual Studio.

Cài đặt công cụ EF Core cho dotnet CLI

Nếu bạn muốn thực thi các lệnh EF Core từ CLI (Giao diện dòng lệnh) của .NET Core, trước tiên hãy cài đặt gói NuGet Microsoft.EntityFrameworkCore.Tools.DotNet bằng NuGet UI.

Sau khi cài đặt gói Microsoft.EntityFrameworkCore.Tools.DotNet, chỉnh sửa file .csproj bằng cách nhấp chuột phải vào dự án trong Solution Explorer và chọn Edit <projectname>.csproj. Thêm node <DotNetCliToolReference> như ví dụ dưới đây. Đây là một bước bổ sung mà bạn cần thực hiện để thực thi các lệnh EF Core 2.0 từ dotnet CLI trong Visual Studio 2017.


<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.0</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.0.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.0.0" />
    <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" />
  </ItemGroup>
</Project>

Bây giờ, hãy mở dấu nhắc lệnh (hoặc thiết bị đầu cuối như PowerShell chẳng hạn) từ thư mục gốc của dự án của bạn và thực hiện các lệnh EF Core từ CLI bắt đầu bằng lệnh dotnet ef, như hình ảnh bên dưới.