I. Khái niệm Code First trong ASPhường .NET MVC
Trong asp mvc ta bao gồm 2 bí quyết tiếp cận bao gồm đó là database first cùng code first, với cùng 1 bài tân oán những hiểu biết nhiệm vụ đổi khác liên tiếp và trở nên tân tiến lập cập thì code first đang là quy mô tiếp cập cân xứng hơn cả, sau đây bản thân đang trình bày các Điểm sáng bao gồm liên quan cho cách làm tiếp cận code first
Bạn đang xem: Code first là gì

Với cách tiếp cận code-first, Entity Framework sẽ tạo nên những đối tượng người tiêu dùng bảng các đại lý tài liệu dựa vào mã sản phẩm mà lại các bạn sản xuất để biểu diễn tài liệu áp dụng.Một vài quy ước của code first chất nhận được tự động hóa thông số kỹ thuật 1 mã sản phẩm nhỏng sau :Quy ước thương hiệu bảng: lúc tạo 1 class miêu tả những thực thể là User sẽ được tàng trữ vào database thì Entity Framework sẽ auto tạo thành 1 bảng có tên là UsersQuy ước khóa chính: Lúc bạn chế tạo 1 trực thuộc tính có tên là UserId trong lớp User của Mã Sản Phẩm thì thuộc tính này được trao làm cho khóa chính. Ngoài ra nó đang thiết lập 1 cột khóa auto-increment nhằm tàng trữ quý giá nếu đẳng cấp khóa là số nguim.Quy ước về côn trùng quan tiền hệ: Entity Framework cung cấp các quy ước khác nhau nhằm nhận biết 1 mối quan hệ giữa 2 mã sản phẩm phụ thuộc tên của trực thuộc tính cùng thứ hạng dữ liệuĐể tò mò cụ thể rộng mình đã làm 1 ví dụ dưới.Quý Khách sẽ xem: Code first là gì
II. Tạo 1 vận dụng ASP .NET MVC cùng với cách tiếp cận code first
Cách 1. Tạo project
Trong nội dung bài viết này bản thân thực hiện Visual studio 2019 cùng SQL Sever 2014Tiến hành mlàm việc và tạo nên 1 proejct ASPhường .NET MVC nlỗi sau :

Tiếp theo lựa chọn MVC để có số đông nhân tố bắt buộc thiết
Cách 2. Tạo Model
Vì là code first đề xuất tất nhiên bản thân sẽ tạo nên những Model bằng code thứ nhất rồi

Tạo 3 Class mang tên Student, Course, Enrollment, đừng quên ko nên được đặt tên tất cả cam kết tự "s" (Số nhiều) vì chưng quy trình generate ngơi nghỉ database sẽ khởi tạo ra bảng tất cả thêm 1 ký từ "s" nữa ẩn dưới

Cấu hình Class Student nlỗi sau:
using System;using System.Collections.Generic;using System.Linq;using System.Web;namespace MyCodeFirst.Models public class Student public int Id get; set; public string LastName get; set; public string FirstName get; set; public DateTime EnrollmentDate get; set; public virtual ICollectionEnrollments get; set; Mình đang giải thích cụ thể một trong những điều nghỉ ngơi class này
Bảng Student sẽ links với bảng Enrollment, nhằm tư tưởng ta sử dụng từ bỏ khóa virtual cùng 1 vẻ bên ngoài dữ liệu là Iconnection (tsay đắm số là một trong Enrollment entity ta đã có mang sau)=> ta đã khái niệm được 1 bảng Student được mapping sang một bảng Enrollment với bảng này sẽ có được khóa nước ngoài là StudentIDTương từ bỏ ta đã code 2 class Enrollment với Course nlỗi sauEnrollment.cs
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ự sinc các mã auto trong database public int CourseID get; set; public string Title get; set; public int Credits get; set; public virtual ICollectionEnrollments get; set;
Cách 3. Connect database
Msinh hoạt Sql Sever với triển khai chế tác 1 database có tên MyCodeFirst
Xem thêm: " Date Back Là Gì ? Nghĩa Của Từ Date Back Trong Tiếng Việt Đồng Nghĩa Của Date Back
Chọn property của máy chủ để lấy máy chủ name
Vào Project => Manager nuget package => Chọn tab browse với tìm kiếm entity framework nlỗi hình
Vào Sever Explorer => Chọn Connect to database => Nhập tên máy chủ cùng chọn database vừa tạo
Tiếp theo ta bấm vào bắt buộc vào data connection vừa kết nối => Property => Coppy connection string
Mngơi nghỉ file webconfig.cs thêm đoạn tựa như (connection string của các bạn sẽ khác) sau vào vào thẻ configuration
B4. Tạo Data accept layer đựng các context
Vào project sinh sản thêm một tlỗi mục mang tên DAL => Tạo 1 class mang tên MyCodeFirstContext.cs cùng thông số kỹ thuật nlỗi 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; set; public DbSet Enrollments get; set; public DbSet Courses get; set; Xong xuôi hãy tiến hành rebuild project, đấy là bắt buộc
B5. Tạo controller cùng view
Chuột buộc phải tlỗi mục controller => add => Add new scaffolded Item => MVC 5 Controller with view, using entity framewrok
Tại phía trên chúng ta đã generate cả controller với view của Student mã sản phẩm, với Course cùng Enrollment chúng ta làm cho tương tự nhé
Run phầm mềm với được kết quảCác bước thực hiện Khi biến hóa Model trong Code First
thường thì vị nhiệm vụ ta rất cần được thay đổi những bảng trong database, với code first ta cần thực hiện nlỗi sau, ở chỗ này bản thân sẽ đổi khác class model Student nhỏng sauusing System;using System.Collections.Generic;using System.Linq;using System.Web;namespace MyCodeFirst.Models public class Student public int Id get; set; public string LastName get; set; public string FirstName get; set; public string Address get; set; //Mình thêm ngôi trường address public DateTime EnrollmentDate get; set; public virtual ICollectionEnrollments get; set; Ta vào tool => Nuget package manager => Package manager consoleThực hiện tại 3 câu lần lượt :enable-migrationsAdd-Migration AddAddressToStudentUpdate-DatabaseKết qua ta vẫn có thêm cột address vào bảng student
Tổng kết
Theo mình code-first sẽ giúp chúng ta vậy với gọi được cơ bản về quy trình generate dữ liệu, sẽ giúp cho tất cả những người new học có thể dễ dãi tiếp cận. điều đặc biệt nó hỗ trợ cho ta dữ thế chủ động hơn vào Việc thêm sửa giỏi xóa Mã Sản Phẩm.
Bài viết được tham khảo trường đoản cú blog của anh ấy haitqd, đấy là nội dung bài viết tiếp theo về series asp mvc của bản thân, các tín đồ cho bạn nhấn xết nhằm chuyển đổi xuất sắc rộng cũng giống như hễ lực nhằm mình làm cho các nội dung bài viết tiếp sau nhé