3 lý do để sử dụng mã thiết kế đầu tiên với Entity Framework
1) Ít hành trình, ít phình to
Sử dụng cơ sở dữ liệu hiện có để tạo tệp mô hình .edmx và các mô hình mã được liên kết dẫn đến một đống mã được tạo tự động khổng lồ. Bạn được ngụ ý không bao giờ chạm vào những tệp được tạo này vì sợ bạn phá vỡ thứ gì đó hoặc những thay đổi của bạn sẽ bị ghi đè lên thế hệ tiếp theo. Bối cảnh và trình khởi tạo cũng bị kẹt trong mớ hỗn độn này. Khi bạn cần thêm chức năng cho các mô hình đã tạo, như thuộc tính chỉ đọc được tính toán, bạn cần mở rộng lớp mô hình. Điều này kết thúc là một yêu cầu cho hầu hết mọi mô hình và bạn kết thúc với một phần mở rộng cho tất cả mọi thứ.
Với mã đầu tiên các mô hình mã hóa tay của bạn trở thành cơ sở dữ liệu của bạn. Các tệp chính xác mà bạn đang xây dựng là những gì tạo ra thiết kế cơ sở dữ liệu. Không có tệp bổ sung và không cần tạo tiện ích mở rộng lớp khi bạn muốn thêm thuộc tính hoặc bất cứ thứ gì khác mà cơ sở dữ liệu không cần biết. Bạn chỉ có thể thêm chúng vào cùng một lớp miễn là bạn làm theo cú pháp thích hợp. Heck, bạn thậm chí có thể tạo một tệp Model.edmx để trực quan hóa mã của bạn nếu bạn muốn.
2) Kiểm soát tốt hơn
Khi bạn đi DB trước, bạn sẽ cảm thấy thoải mái với những gì được tạo cho các mô hình của mình để sử dụng trong ứng dụng của bạn. Đôi khi quy ước đặt tên là không mong muốn. Đôi khi các mối quan hệ và hiệp hội không hoàn toàn như bạn muốn. Những lần khác, mối quan hệ không nhất thời với việc lười biếng tải sẽ tàn phá các phản hồi API của bạn.
Mặc dù hầu như luôn luôn có một giải pháp cho các vấn đề tạo mô hình mà bạn có thể gặp phải, nhưng trước tiên, mã sẽ cung cấp cho bạn quyền kiểm soát hoàn chỉnh và chi tiết ngay từ đầu. Bạn có thể kiểm soát mọi khía cạnh của cả mô hình mã và thiết kế cơ sở dữ liệu của bạn một cách thoải mái cho đối tượng kinh doanh của bạn. Bạn có thể chỉ định chính xác các mối quan hệ, các ràng buộc và các hiệp hội. Bạn có thể đồng thời đặt giới hạn ký tự thuộc tính và kích thước cột cơ sở dữ liệu. Bạn có thể chỉ định những bộ sưu tập liên quan nào sẽ được tải háo hức hoặc hoàn toàn không được đăng. Nói tóm lại, bạn chịu trách nhiệm cho nhiều thứ hơn nhưng bạn có toàn quyền kiểm soát thiết kế ứng dụng của mình.
3) Kiểm soát phiên bản cơ sở dữ liệu
Đây là một vấn đề lớn. Phiên bản cơ sở dữ liệu là khó, nhưng với mã di chuyển đầu tiên và mã di chuyển đầu tiên, nó hiệu quả hơn nhiều. Vì lược đồ cơ sở dữ liệu của bạn hoàn toàn dựa trên các mô hình mã của bạn, theo phiên bản kiểm soát mã nguồn của bạn, bạn sẽ giúp phiên bản cơ sở dữ liệu của mình. Bạn chịu trách nhiệm kiểm soát việc khởi tạo ngữ cảnh của mình, điều này có thể giúp bạn thực hiện những việc như khởi tạo dữ liệu cố định. Bạn cũng chịu trách nhiệm tạo mã di chuyển đầu tiên.
Khi bạn lần đầu tiên kích hoạt di chuyển, một lớp cấu hình và di chuyển ban đầu được tạo. Di chuyển ban đầu là lược đồ hiện tại của bạn hoặc đường cơ sở v1.0 của bạn. Từ thời điểm đó, bạn sẽ thêm các lần di chuyển được đánh dấu thời gian và được gắn nhãn với một mô tả để giúp sắp xếp các phiên bản. Khi bạn gọi bổ sung di chuyển từ trình quản lý gói, một tệp di chuyển mới sẽ được tạo tự động chứa mọi thứ đã thay đổi trong mô hình mã của bạn trong cả hàm UP () và DOWN (). Hàm UP áp dụng các thay đổi cho cơ sở dữ liệu, hàm DOWN sẽ loại bỏ những thay đổi tương tự trong trường hợp bạn muốn khôi phục. Hơn thế nữa, bạn có thể chỉnh sửa các tệp di chuyển này để thêm các thay đổi bổ sung như chế độ xem mới, chỉ mục, quy trình được lưu trữ và bất cứ điều gì khác. Chúng sẽ trở thành một hệ thống phiên bản thực sự cho lược đồ cơ sở dữ liệu của bạn.