Code First Là Gì
I. Quan niệm Code First vào ASP .NET MVC
Trong asp. Net mvc ta có 2 phương pháp tiếp cận bao gồm đó là database first và code first, với 1 bài toán yêu cầu nhiệm vụ biến hóa hóa liên tiếp và tăng trưởng nhanh gọn thì code first sẽ là quy mô tiếp cập cân xứng hơn cả, dưới đây mình sẽ biểu diễn những đặc thù chính đối sánh đến phương pháp tiếp cận code first

II. Tạo nên 1 vận dụng ASP .NET MVC với cách tiếp cận code first
Bước 1. Tạo ra project
Trong bài viết này mình thực hiện Visual studio 2019 với SQL sever 2014Tiến hành mở và chế tạo ra 1 proejct ASP .NET MVC như sau :
Bạn đang xem: Code first là gì
Bạn đang đọc: Code First Là Gì – Entity Framework Code First Toàn Tập
Xem thêm: Giao Thức Sip Là Gì ? Tìm Hiểu Về Sip Server, Sip Account, Sip Phone

Bước 2. Tạo Model
Tiếp theo chọn MVC để có những nhân tố thiết yếuVì là code first buộc phải tất yếu đuối mình sẽ khởi tạo những model bằng code đi đầu rồi


using System;using System.Collections.Generic;using System.Linq;using System.Web;namespace MyCodeFirst.Models public class Enrollment public int EnrollmentID get; set; public int Grade get; set; public int CourseID get; set; public int StudentID get; set; public virtual Student Student get; set; public Course Course get; set; Course.csusing System;using System.Collections.Generic;using System.Linq;using System.Web;using System.ComponentModel.DataAnnotations.Schema;namespace MyCodeFirst.Models public class Course //Sử dụng anotation để tự sinh các mã tự động trong database public int CourseID get; set; public string Title get; set; public int Credits get; set; public virtual ICollectionEnrollments get; set;
Bước 3. Connect database
Mở Sql máy chủ và thực hiện tạo 1 database có tên MyCodeFirst

Chọn property của sever để lấy sever name




Mở tệp tin webconfig.cs thêm đoạn tương tự (connection string của bạn sẽ khác) sau vào vào thẻ configuration
Xem thêm: Hình Nào Sau Đây Không Thuộc Khối Tròn Xoay ? Hình Nào Sau Đây Thuộc Khối Tròn Xoay : A

B4. Tạo ra Data accept layer chứa các context
Vào project tạo thêm một thư mục có tên DAL => tạo thành 1 class mang tên MyCodeFirstContext.cs và cấu dường như sauVào project tạo thêm 1 thư mục có tên DAL => tạo thành 1 class có tên MyCodeFirstContext. Cs và thông số kỹ thuật kỹ thuật như sauusing MyCodeFirst. Models ; using System ; using System. Collections. Generic ; using System. Data. Entity ; using System. Linq ; using System. Web ; namespace MyCodeFirst. DAL public class MyCodeFirstContext : DbContext public MyCodeFirstContext ( ) : base ( ” MyCodeFirstContext ” ) public DbSet Students get ; mix ; public DbSet Enrollments get ; set ; public DbSet Courses get ; mix ; kết thúc xuôi hãy tiến hành rebuild project, đấy là bắt buộc
B5. Sinh sản controller và view
Chuột đề xuất thư mục controller => showroom => showroom new scaffolded cửa nhà => MVC 5 Controller with view, using entity framewrok




Các bước thực hiện khi chuyển đổi Model vào Code First
Đôi khi vì nhiệm vụ ta cần phải chuyển đổi các bảng vào database, cùng với code first ta phải tiến hành như sau, tại chỗ này mình sẽ thay đổi class mã sản phẩm Student như sauĐôi khi vì trọng trách ta cần phải biến hóa hầu như bảng vào database, cùng với code first ta phải xúc tiến như sau, ở đây mình sẽ biến đổi class mã sản phẩm Student như sauusing System ; using System. Collections. Generic ; using System. Linq ; using System. Web ; namespace MyCodeFirst. Models public class Student public int Id get ; mix ; public string LastName get ; set ; public string FirstName get ; phối ; public string Address get ; phối ; / / mình thêm ngôi trường address public DateTime EnrollmentDate get ; set ; public virtual ICollectionEnrollments get ; phối ; Ta vào tool => Nuget package manager => Package manager consoleThực hiện 3 câu theo lần lượt : enable-migrationsAdd-Migration AddAddressToStudentUpdate-DatabaseKết qua ta đã tất cả thêm cột address vào bảng student

Tổng kết
Do bảng student đã đổi khác nên các bạn cùng đề xuất xóa StudentController và mọi View khớp ứng và sinh sản lại như bước 5 nhằm tránh lỗi nhé+ Ưu điểm : siêu thông dụng ( bởi vì những lập trình sẵn viên thường xuyên không thích thiết kế DB, tuy thế thích thiết kế class ) kiểm soát trọn vẹn code Model, thêm xóa sửa nằm trong tính vô cùng dễ dàngKhông phải nặng đầu tư tưởng về DB. Đối với giải pháp tiếp cận này, DB chỉ là loại “ cục ” data, kéo ra xài thôiCó thể version control Database .
+ nhược điểm : những biến hóa cấu tạo trực tiếp bên trên DB vẫn mấtKhó trấn áp rất nhiều column sẽ tạo nên trên DbHơi khó khi tích phù hợp với Db bao gồm sẵn .Theo bản thân code-first để giúp đỡ tất cả họ nắm và hiểu được cơ phiên bản về tiến trình generate tài liệu, sẽ giúp cho người mới học hoàn toàn rất có thể thuận một thể tiếp cận. Đặc biệt nó hỗ trợ cho ta dữ thế chủ động hơn trong việc thêm sửa giỏi xóa mã sản phẩm .Bài viết được tham khảo từ blog của anh haitqd, trên đây là nội dung bài viết tiếp theo về series asp .net mvc của mình, mọi tín đồ cho mình nhận xết để thay đổi tốt hơn tương tự như động lực để mình làm các nội dung bài viết tiếp theo nhé

