2012-08-29 39 views
7

Xin lỗi nếu điều này sai địa điểm, tuy nhiên tôi nghĩ là vậy.Cách thực hành tốt nhất để chỉnh sửa mã được tạo tự động MVC3?

Vì vậy, khi tạo ứng dụng internet MVC3, tôi đã sử dụng phương thức cơ sở dữ liệu đầu tiên và các lớp của tôi đã được tạo cho tôi. Tôi mới vào MVC3 và khá mới đối với C# và visual studio mặc dù tôi có một chút kinh nghiệm.

Mã được tạo tự động cảnh báo rằng việc chỉnh sửa có thể gây ra kết quả không mong muốn và thay đổi sẽ bị xóa nếu mã được tạo lại. Theo tôi hiểu nó có nghĩa là thay đổi cơ sở dữ liệu, chạy lại các tệp tt hoặc cập nhật mô hình.

Tuy nhiên, có thực hành tốt để chỉnh sửa và chỉ theo dõi các thay đổi trong trường hợp tôi cần tạo lại hay có cách nào tốt hơn để thực hiện việc này không?

Cảm ơn bạn đã được trợ giúp.

Trả lời

11

Các lớp được tạo nên là các lớp partial để bạn có thể quản lý bên ngoài các cải tiến bằng cách tạo lớp partial của riêng bạn với cùng một không gian tên và tên.

+0

Từ khóa "một phần" +1 là đúng cách, cách quản lý mã được tạo tự động và tùy chỉnh cùng nhau. – TcKs

+0

Cảm ơn bạn, sẽ đọc các lớp học một phần và cách kết hợp chúng lại với nhau. Sẽ chấp nhận khi nó cho phép tôi. :) – Bohdi

+0

Vì vậy, nếu tôi có một 'trang lớp học' công khai trong một tệp lớp được gọi là pages.cs và trang lớp được tạo tự động được gọi là news_page nhưng còn được gọi là 'pagetest class partial'will this work? chúng đều ở dạng mô hình và cả hai đều nằm trong cùng một dự án không gian tên.Mô hình. Tuy nhiên, một phần lớp được tạo tự động nằm trong tệp .edmx. nửa kia của lớp học một phần có cần phải di chuyển trong đó không? – Bohdi

1

Trong cách tiếp cận mô hình đầu tiên, sử dụng chiến lược thế hệ mã mặc định trên bạn EDMX tập tin, các lớp học tạo ra cho bạn DbContextEntity lớp đều các lớp học phần.

Vì vậy, tùy thuộc vào loại thay đổi của bạn, nếu bạn muốn mở rộng các lớp được tạo này, chỉ cần tạo một lớp học mới với mã tùy chỉnh trong đó. Phần của bạn sẽ không bị ghi đè bởi trình tạo mã.

Các vấn đề liên quan