Bưởi thực thểframeworkcore mysql 6.0 1
Nhà cung cấp cơ sở dữ liệu MySQL của Pomelo cho Entity Framework Core Show
Trong bài học này, chúng tôi sẽ giải thích cách định cấu hình một dự án để sử dụng Entity Framework Core với cơ sở dữ liệu MySQL. Các hướng dẫn trong bài học này có thể được sử dụng cho bất kỳ ứng dụng nào bạn xây dựng để sử dụng EF Core với cơ sở dữ liệu MySQL Đối với hướng dẫn này, chúng ta sẽ sử dụng ứng dụng Danh sách việc cần làm làm ví dụ và chúng ta sẽ bắt đầu từ nơi chúng ta đã dừng lại với ứng dụng Danh sách việc cần làm. sử dụng Thiết lập dự ánThêm và loại bỏ các phụ thuộcBỏ cái cũ và với cái mới. Chúng tôi sẽ bắt đầu bằng cách thêm các phụ thuộc bổ sung mà chúng tôi sẽ cần cho dự án EF Core này. Chuyển đến thư mục gốc của dự án sản xuất ( 0) qua thiết bị đầu cuối và thêm các phụ thuộc sau
Lưu ý một trong số này không bắt đầu với Microsoft. Đó là bởi vì 1 thực sự là một gói của bên thứ ba có thể được tải xuống từ cùng một nguồn với các gói chính thức của Microsoft. Xem Repo GitHub chính thức của Entity Framework Core để tìm hiểu thêmChúng ta cũng hãy xóa gói
Lưu ý cách MySqlConnector hiện đã biến mất khỏi. tập tin csproj. Lệnh 3 cho phép chúng tôi xóa các gói mà chúng tôi không cần khỏi dự án của mình một cách thuận tiện và sạch sẽChuỗi kết nối cơ sở dữ liệuTiếp theo, chúng ta cần thêm chuỗi kết nối cơ sở dữ liệu vào ứng dụng của mình Khi chúng tôi sử dụng gói MySqlConnector để giao tiếp với cơ sở dữ liệu, chúng tôi đã đặt chuỗi kết nối cơ sở dữ liệu của mình vào 4 và tải nó trong quá trình tạo máy chủ ứng dụng web của chúng tôi vào 5. Chúng tôi đã sử dụng 4 để bảo vệ dữ liệu nhạy cảm trong chuỗi kết nối cơ sở dữ liệu của mình bằng cách thêm nó vào 7 để nó không bao giờ bị theo dõi trong lịch sử Git của chúng tôi. Chúng tôi cũng bao gồm các hướng dẫn về cách tạo lại một 4 trong READMEs dự án của chúng tôiChà, chúng tôi sẽ sử dụng 4 theo cách tương tự để tải và bảo vệ chuỗi kết nối cơ sở dữ liệu của chúng tôi với EF Core. Vì vậy, nếu bạn đang theo dõi và cập nhật ứng dụng Danh sách việc cần làm của mình, thì chúng tôi không cần thực hiện thay đổi lớn nào với các quy trình của mình xung quanh việc sử dụng 4Tất cả các dự án khác mà bạn tạo sẽ cần những thứ sau
Tên dự án. Giải pháp/Tên dự án/cài đặt ứng dụng. json
Cập nhật tên cơ sở dữ liệu và tạo cơ sở dữ liệu mớiChúng tôi khuyên bạn nên tạo cơ sở dữ liệu mới cho hướng dẫn sử dụng EF Core này để giao tiếp với cơ sở dữ liệu MySQL. Làm như vậy sẽ bảo vệ cơ sở dữ liệu mà chúng tôi đã thiết lập với phiên bản Danh sách việc cần làm sử dụng MySqlConnector. Để làm điều này, hãy làm theo các bước sau
Xóa { "ConnectionStrings": { "DefaultConnection": "Server=localhost;Port=3306;database=[YOUR-DB-NAME];uid=[YOUR-USER-HERE];pwd=[YOUR-PASSWORD-HERE];" } } 4Chúng tôi sẽ định cấu hình dự án của mình để sử dụng EF Core trong 5. Trong quá trình này, chúng tôi sẽ thiết lập cơ sở dữ liệu MySQL của mình để chạy như một dịch vụ trong 5. Do đó, chúng tôi không còn cần tệp 7 có chứa lớp 8. Bắt đầu bằng cách xóa tệp này khỏi dự án Danh sách việc cần làm của bạnLoại bỏ những điều sau đây ToDoList/Mô hình/DatabaseConfig. cs
Tạo bối cảnh và thực thể cơ sở dữ liệuTiếp theo, chúng ta cần tạo một mô hình cơ sở dữ liệu và các bảng trong dự án của mình để Entity Framework Core sử dụng để ánh xạ các lớp và đối tượng C# của chúng ta tới các mục và bảng cơ sở dữ liệu MySQL và ngược lại. EF Core sử dụng thuật ngữ cụ thể cho các mô hình này
Chúng tôi không phải thay đổi bất cứ điều gì với 9 hoặc 0 để biến những mô hình đó thành các thực thể EF Core. Chúng tôi liệt kê các thực thể trong ứng dụng của mình bằng cách xác định chúng trong ngữ cảnh cơ sở dữ liệu. Vì vậy, hãy tạo điều đó tiếp theoTrong vòng 9, hãy tạo một tệp mới có tên là 0 và thêm đoạn mã sau vào đóToDoList/Mô hình/ToDoList bối cảnh. cs
Hãy xem qua những gì đang xảy ra ở đây
Định cấu hình $ dotnet remove package MySqlConnector 5 để chạy Cơ sở dữ liệu của chúng tôi dưới dạng Dịch vụTiếp theo, chúng tôi sẽ cập nhật 5 để thực hiện hai việc
Hãy xem mã mới trong 5. Chúng tôi sẽ hiển thị toàn bộ tập tin
Hãy giải thích các bản cập nhật
Với việc EF Core hiện được định cấu hình để chạy dưới dạng dịch vụ, EF Core sẽ tự động xử lý việc mở và đóng kết nối cơ sở dữ liệu mỗi khi chúng tôi truy vấn cơ sở dữ liệu của mình. khá gọn gàng Lưu ý rằng mặc dù chúng tôi đặt tên ngữ cảnh cơ sở dữ liệu EF Core của mình là 4Và cuối cùng, nếu bạn muốn đọc thêm về cách định cấu hình EF Core như một dịch vụ, hãy truy cập tài liệu và cuộn xuống phần "Sử dụng DbContext với nội xạ phụ thuộc" Cập nhật lên Quy ước đặt tên cốt lõi của EFĐể EF Core ánh xạ các mô hình C# của chúng tôi tới cơ sở dữ liệu MySQL, chúng tôi cần tuân theo các quy ước đặt tên cụ thể, chính xác là hai quy ước
Để đáp ứng các quy ước đặt tên này, chúng tôi cần truy cập cơ sở dữ liệu 1 của mình và cập nhật tên cột theo cách sau
Tiếp theo, hãy mở 9 trong dự án 0 và cập nhật thuộc tính 00 của mô hình 4 của bạn thành 06. Mô hình 4 bây giờ trông như thế này
Lưu ý rằng chúng ta sẽ tuân theo các quy ước đặt tên này khi thiết lập cơ sở dữ liệu và thực thể kể từ bây giờ Tài liệu tham khảo kho lưu trữTheo liên kết bên dưới để xem phiên bản mẫu của ứng dụng To Do List sẽ trông như thế nào vào thời điểm này. Lưu ý rằng đây là một liên kết đến một nhánh cụ thể trong kho lưu trữ Làm cách nào để sử dụng Entity Framework Core với MySQL?Bạn có thể kiểm tra API trực tiếp bằng một công cụ như Postman hoặc kết nối nó với ví dụ về ứng dụng Angular hoặc React có sẵn. . Bắt đầu ở chế độ gỡ lỗi. . Thêm nhà cung cấp cơ sở dữ liệu MySQL từ NuGet. . Thêm chuỗi kết nối vào cài đặt ứng dụng. . Cập nhật bối cảnh dữ liệu để sử dụng MySQL. . Cài đặt công cụ dotnet ef. . Thêm gói EF Core Design từ NuGet Bưởi MySQL là gì?Bưởi. Thực thểKhungLõi. MySql là nhà cung cấp Lõi khung thực thể được xây dựng dựa trên MySqlConnector cho phép sử dụng ORM Lõi khung thực thể với MySQL .
EF có hoạt động với MySQL không?Entity Framework là tên được đặt cho một tập hợp các công nghệ hỗ trợ phát triển các ứng dụng phần mềm hướng dữ liệu. MySQL Connector/NET hỗ trợ Entity Framework 6. 0 (EF6 hoặc EF 6. 4) và Lõi khung thực thể (Lõi EF) , đây là khung mới nhất hiện có cho.
Gói nào sẽ khiến gói quan hệ Microsoft EntityFrameworkCore được thêm vào thông qua phần phụ thuộc NuGet?Yêu cầu NuGet 3. 6 hoặc cao hơn. Lệnh này dự định sẽ được sử dụng trong Bảng điều khiển quản lý gói trong Visual Studio, vì nó sử dụng phiên bản Gói cài đặt của mô-đun NuGet.
. Gói NuGet (2. 4K) |