Làm cách nào để kết nối cơ sở dữ liệu MySQL với Entity Framework Core?

Trong bài viết này, chúng ta sẽ tạo một ASP đơn giản. NET Core MVC Web với MySQL làm cơ sở dữ liệu thay vì SQL Server

MySQL là một trong những cơ sở dữ liệu được sử dụng rộng rãi nhất và nó thậm chí còn có một nhánh nguồn mở có tên là MariaDB. May mắn thay, với các nhà cung cấp cơ sở dữ liệu khác nhau cho Entity Framework Core, chúng ta có thể dễ dàng định cấu hình EF để hoạt động với các cơ sở dữ liệu bao gồm MySQL và MariaDB

điều kiện tiên quyết

  1. MySQL - Trong hướng dẫn này, tôi sẽ sử dụng XAMPP
  2. Visual Studio 2022 đã cài đặt các mẫu phát triển Web
  3. NET Core 6 hoặc. NET lõi 5

Tạo một dự án mới

Mở Visual Studio -> Tạo dự án mới -> Chọn> Ứng dụng web (Trình điều khiển chế độ xem mô hình)

Làm cách nào để kết nối cơ sở dữ liệu MySQL với Entity Framework Core?
báo cáo quảng cáo này


Đặt mua

Tham gia bản tin để nhận thông tin cập nhật mới nhất

Sự thành công

Tuyệt vời. Kiểm tra hộp thư đến của bạn và nhấp vào liên kết

Lỗi

Vui lòng nhập địa chỉ email hợp lệ


Hoặc nhấp chuột phải vào dự án của bạn, chọn Quản lý gói NuGet…, trong hộp Tìm kiếm, nhập MySqlConnector và cài đặt gói trong dự án của bạn

2. Chuỗi kết nối

Một chuỗi kết nối điển hình cho MySQL là

Server=YOURSERVER;User ID=YOURUSERID;Password=YOURPASSWORD;Database=YOURDATABASE

Thay thế các giá trị trong chuỗi đó bằng cài đặt thích hợp cho cơ sở dữ liệu của bạn. Để biết các cài đặt nâng cao hơn, hãy xem Tùy chọn kết nối

Nếu bạn đang sử dụng ASP. NET Core, chuỗi kết nối của bạn thường sẽ được lưu trữ trong appsettings.json

{
    ....
    "ConnectionStrings": {
        "Default": "Server=YOURSERVER;User ID=YOURUSERID;Password=YOURPASSWORD;Database=YOURDATABASE"
    }
}

3. Cấu hình dịch vụ (ASP. NET lõi)

Nếu sử dụng ASP. NET Core, bạn sẽ muốn đăng ký kết nối cơ sở dữ liệu trong Startup.cs

public void ConfigureServices(IServiceCollection services)
{
    // ...
    services.AddTransient(_ => new MySqlConnection(Configuration["ConnectionStrings:Default"]));
}

4. Mở và sử dụng kết nối

trong ASP. NET Core, đối tượng MySqlConnection sẽ được đưa vào lớp phụ thuộc vào lớp

Server=YOURSERVER;User ID=YOURUSERID;Password=YOURPASSWORD;Database=YOURDATABASE
0 của bạn. Đối với các loại dự án khác, bạn có thể cần tạo kết nối một cách rõ ràng

Code-First chủ yếu hữu ích trong Thiết kế hướng miền. Trong phương pháp Code-First, bạn tập trung vào miền ứng dụng của mình và bắt đầu tạo các lớp cho thực thể miền của bạn thay vì thiết kế cơ sở dữ liệu của bạn trước rồi tạo các lớp phù hợp với thiết kế cơ sở dữ liệu của bạn.  

Hôm nay, chúng tôi sẽ hướng dẫn bạn từng bước cách sử dụng EF Core 5. 0 trong. NET lõi 3. 1 để triển khai phương pháp Code-First để tạo/cập nhật cơ sở dữ liệu MySQL trên Visual Studio 2019 cho ứng dụng API RESTful

Bước 1 - Tạo. NET lõi 3. 1 dự án trên Visual Studio 2019

Chúng tôi sẽ tạo một dự án API RESTful với. NET lõi 3. 1 trên Visual Studio 2019 (FYI. chúng tôi sử dụng Microsoft Visual Studio Professional 2019 Phiên bản 16. 8. 0)

VS 2019 - Tệp - Mới - Dự án… chọn “ASP. NET Core Web Application” - Tiếp theo,

Use Entity Framework Core 5.0 In .NET Core 3.1 With MySQL Database By Code-First Migration On Visual Studio 2019 For A RESTful APIs Application

Nhập tên dự án “EFCoreMySQL” (bất cứ thứ gì bạn thích), chọn vị trí bạn muốn, nhấp vào nút “Tạo”,

Use Entity Framework Core 5.0 In .NET Core 3.1 With MySQL Database By Code-First Migration On Visual Studio 2019 For A RESTful APIs Application

Đảm bảo “ASP. NET lõi 3. 1” được chọn và “API” cũng được chọn làm mẫu dự án. Có thể chọn hoặc bỏ chọn “Configure for HTTPS” và “Enable Docker Support” tùy theo nhu cầu của bạn. Nhấp vào nút “Tạo”

Use Entity Framework Core 5.0 In .NET Core 3.1 With MySQL Database By Code-First Migration On Visual Studio 2019 For A RESTful APIs Application

Đợi một lúc, dự án “EFCoreMySQL” được tạo thành công

Use Entity Framework Core 5.0 In .NET Core 3.1 With MySQL Database By Code-First Migration On Visual Studio 2019 For A RESTful APIs Application

Trên ribbon VS 2019, nhấp vào menu thả xuống như hình bên dưới, chọn “Google Chrome”, sau đó chọn “IIS Express”. Trình đơn thả xuống sẽ đóng lại và hiển thị “IIS Express”. Nhấp vào “IIS Express” để xây dựng và chạy thử nghiệm

Tất cả các dịch vụ trực tuyến của Bộ bao gồm Cổng thông tin, email, lưu trữ tài liệu trực tuyến, Mạng nội bộ và truy cập Internet, phải được sử dụng một cách có trách nhiệm và tuân theo các chính sách của Bộ

Bằng cách truy cập bất kỳ dịch vụ trực tuyến nào của Bộ, bạn đồng ý và cam kết tuân thủ tất cả các chính sách của Bộ. Bạn cũng đồng ý ghi nhật ký, theo dõi, kiểm tra và tiết lộ việc bạn sử dụng các dịch vụ này

Việc sử dụng không phù hợp các dịch vụ này có thể dẫn đến hành động kỷ luật có thể bao gồm đình chỉ quyền truy cập vào các dịch vụ trực tuyến, sa thải hoặc chấm dứt hợp đồng

Bạn có thể xem các chính sách liên quan đến việc sử dụng hợp lý các dịch vụ này tại trang web Chính sách của chúng tôi

Chính sách trực tuyến dành cho sinh viên. Chính sách sử dụng viễn thông

Cha mẹ/người có trách nhiệm - Sử dụng hợp lý

Tuyên bố bản quyền

[CẢNH BÁO]

Một số tài liệu này có thể đã được sao chép [và thông báo cho bạn] theo giấy phép theo luật định trong phần 113P của Đạo luật bản quyền. Bất kỳ việc sao chép hoặc truyền đạt thêm tài liệu này của bạn có thể là đối tượng được bảo vệ bản quyền theo Đạo luật

Tôi có thể sử dụng lõi Entity Framework với MySQL không?

MySQL Connector/NET tương thích với nhiều phiên bản Entity Framework Core . Để biết thông tin tương thích cụ thể, xem Bảng 7. 2, “Phiên bản trình kết nối/NET và hỗ trợ lõi khung thực thể”.

Làm cách nào để kết nối Entity Framework với MySQL?

Sử dụng MySQL với Entity Framework .
điều kiện tiên quyết
Bắt đầu
Bước 1. Mở trang Quản trị MySQL và tạo cơ sở dữ liệu mới
Bước 2. Sau khi tạo cơ sở dữ liệu mới, hãy tạo một bảng mới
Bước 3. Sau khi tạo bảng mới, hãy mở Visual Studio và nhấp vào Dự án mới và đặt tên cho dự án

Cách kết nối với cơ sở dữ liệu MySQL trong. NET lõi?

Cách kết nối với MySQL từ. .
Cài đặt MySqlConnector. Đầu tiên, cài đặt gói MySqlConnector NuGet. .
Chuỗi kết nối. Một chuỗi kết nối điển hình cho MySQL là. Máy chủ=YOURSERVER;User ID=YOURUSERID;Mật khẩu=YOURPASSWORD;Cơ sở dữ liệu=YOURDATABASE. .
Cấu hình dịch vụ (ASP. NET lõi).
Mở và sử dụng kết nối

Làm cách nào để kết nối cơ sở dữ liệu với Entity Framework?

Chọn ADO. NET Entity Data Model .
Nhấp chuột phải vào Thư mục Mô hình-> Thêm-> Lớp-> Visual C#-> Dữ liệu-> ADO. NET Entity data Model-> Entry Name-> ADD
Hộp thoại Trình hướng dẫn Mô hình Dữ liệu Thực thể. Chọn EF Designer từ cơ sở dữ liệu-> Tiếp theo-> Kết nối mới