Đó là sự hiểu biết của tôi rằng hàm tạo cho bộ điều khiển không được gọi trong mỗi yêu cầu web. Giả sử điều này là đúng, vòng đời của bộ điều khiển là gì? Là "xây dựng" khi bắt đầu ứng dụng, sau đó được lưu trữ và gọi với requestcontext được chèn vào nó với mỗi yêu cầu web?Vòng đời điều khiển ASP.NET MVC
Chỉ cần rõ ràng, tôi không hỏi cách mô phỏng hành vi của hàm tạo, tôi sử dụng sự kiện OnActionExecuting để khởi tạo những thứ tôi thường làm trong một hàm tạo. Ngoài ra, tôi sử dụng các nhà xây dựng trên bộ điều khiển để kiểm tra đơn vị và hệ thống.
Cảm ơn!
Tại sao? Tại sao? –
Tôi đã say mê và tự dạy tại sao điều này xảy ra. Tôi đã tạo các bộ điều khiển với các hành động đọc/ghi và các khung nhìn sử dụng EF. Mã được tạo ra đã tạo ra một biến cá thể riêng cho cá thể EF Context. Tôi nghĩ tôi sẽ thông minh và biến nó thành một biến tĩnh. Vấn đề là nếu một cái gì đó bên ngoài phạm vi của bộ điều khiển này sửa đổi cơ sở dữ liệu, bối cảnh tĩnh không bao giờ biết. Bây giờ tôi để nó như một biến mẫu và vì một cá thể mới được tạo ra với mỗi yêu cầu, bối cảnh có thể thấy bất kỳ thay đổi nào đối với cơ sở dữ liệu. – ThatAintWorking
Trong một API Web, nơi tất cả các trạng thái được chứa trong các tham số (nghĩa là một kiểu hàm) không có lý do gì (mà tôi có thể thấy) tại sao một bộ điều khiển không thể được sử dụng lại. Đó là chủ đề an toàn theo thiết kế. –