Tôi đang trong giai đoạn lập kế hoạch cho một hệ thống mạng nội bộ của nhân viên được xây dựng với ASP.NET MVC 4. Chúng tôi muốn trang web bao gồm các "mô-đun" riêng biệt, mỗi mô-đun cung cấp một tính năng khác nhau: nhắn tin, thay đổi bảng lương, v.v. . Tôi muốn các mô-đun này có thể được bật hoặc tắt trong thời gian biên dịch. Trang chủ sẽ hiển thị một số loại điều hướng sẽ liên kết với từng mô-đun được tải.
Điều đó thật dễ dàng cho đến nay, nhưng tôi không muốn tính năng điều hướng phải biết về các mô-đun trước đó. Nói cách khác, tôi muốn các mô-đun có thể khám phá một cách linh hoạt; Tôi muốn có thể viết mã cho một mô-đun mới và sau đó có một liên kết được thêm vào thanh điều hướng mà không có thay đổi mã ở bất kỳ nơi nào khác trong nguồn. Mỗi mô-đun nên có một số cách đăng ký chính nó với thanh điều hướng và - quan trọng hơn - điều này nên được thực hiện cho từng mô-đun khi được tải.
Tôi tin rằng điều này ngăn cấm sử dụng Khu vực của MVC, vì những khu vực này được thiết kế cho trường hợp khi bố cục của trang web được biết trước. MEF có vẻ như có thể phù hợp, mặc dù mọi người dường như đã thành công lẫn lộn trong việc kết hợp MEF với MVC. MEF thực sự là con đường để đi đến đây, hay có cách nào tốt hơn để hoàn thành những gì tôi cần?