Chúng tôi có một quy trình mà kịch bản lệnh cơ sở dữ liệu của chúng tôi thay đổi (và phiên bản chúng bằng Juneau) thành cơ sở dữ liệu của ứng dụng của chúng tôi với cơ sở mã của chúng tôi. Họ đang tốt tại kế toán cho các cột mới là null, và không xóa dữ liệu hiện có, nhưng đôi khi một cột đổi tên lén lút trong đó không phải là hoàn toàn giao tiếp. Vì vậy, họ sẽ thực hiện một số thay đổi đối với lược đồ cơ sở dữ liệu trên máy chủ thử nghiệm, chúng tôi sẽ cập nhật Entity Framework để làm việc với những thay đổi đó và sau đó cam kết mã của chúng tôi. Quá trình này hoạt động tốt, ngoại trừ khi đến lúc triển khai.Xác minh rằng lược đồ cơ sở dữ liệu đích tuân thủ những gì trong Khuôn khổ thực thể?
Chúng tôi đã thiết lập TFS để triển khai xây dựng thành công cho các máy chủ thích hợp, nhưng không đảm bảo rằng cơ sở dữ liệu cho môi trường đó đã được cập nhật. Chúng tôi không quan tâm nếu các trường/bảng/lượt xem bổ sung/v.v. tồn tại trong cơ sở dữ liệu đích, nhưng chúng tôi muốn thay đổi bản dựng để kiểm tra xem cơ sở dữ liệu có chứa ít nhất mọi thứ mà EF nhận thức được không.
Tôi đã xem this question, nhưng tôi không cần lược đồ để khớp chính xác. Ngoài ra, chúng tôi không muốn nó tạo/sửa đổi cơ sở dữ liệu trực tiếp. Và this question có vẻ như nó đang cố gắng để đạt được một lý tưởng tương tự, nhưng vẫn không hoàn toàn những gì chúng tôi đang tìm kiếm để đạt được. Chúng tôi chỉ muốn thử nghiệm tích hợp các loại để xác minh phiên bản EF của chúng tôi sẽ hoạt động với lược đồ đích.
Tôi hoàn toàn đồng ý về quy trình triển khai, nhưng anh chàng cơ sở dữ liệu không tin tưởng các tập lệnh triển khai được tạo thông qua Juneau nhưng hoàn toàn tự động hóa việc nâng cấp cơ sở dữ liệu. Vì vậy, chúng ta cần xác minh rằng không ai thực hiện thay đổi thủ công đối với cơ sở dữ liệu được nhắm mục tiêu hoặc chỉ áp dụng một phần tập lệnh được nâng cấp. –