2013-03-16 15 views
5

Tôi đang làm việc với báo cáo rdlc (ASP.Net MVC 4 với VS2012). Vì chế độ xem không thể xử lý kiểm soát trình xem báo cáo, tôi đặt trình xem báo cáo bên trong tệp điều khiển người dùng, tệp .aspx. Thật không may khi tôi render để xem (WebForm1.aspx) nó tạo ra lỗi: Chế độ xem tại 'WebForm1.aspx' phải lấy được từ ViewPage, ViewPage, ViewUserControl hoặc ViewUserControl.MVC 4 - Chế độ xem 'WebForm1.aspx' phải lấy từ ViewPage, ViewPage <TModel>, ViewUserControl hoặc ViewUserControl <TModel>

Tôi đã tìm kiếm giải pháp trên web nhưng cho đến bây giờ vẫn không tìm thấy giải pháp nào. Bạn còn ý kiến ​​nào không?

+0

Trang aspx này hiện được kế thừa từ loại nào? –

+0

Inherits = "MyMVCProject.WebForm1" –

Trả lời

2

Tôi đã vô tình gây ra điều này xảy ra nhiều hơn một vài lần trong các ứng dụng MVC, và nó thường đã làm với một trong các cách sau:

  • Có nhiều phiên bản của MVC tham chiếu trong dự án. Tương tự như this question. Tôi đã có nó cắn tôi một vài lần khi đi từ MVC 2 đến MVC 3, mặc dù tôi không thể nói rằng nó đã xảy ra với tôi trong MVC4.

  • MVC cố gắng sử dụng ViewEngine sai để hiển thị Chế độ xem. Vì bạn đang sử dụng .aspx cho khung nhìn, bạn có chắc chắn đã thiết lập dự án để sử dụng công cụ xem WebForms chứ không phải Razor không? Tôi tưởng tượng nó có lẽ sẽ tung ra lỗi đó nếu Razor đang cố gắng phân tích cú pháp WebForms.

  • Tệp cấu hình (cụ thể là web.conf) không có dữ liệu chính xác cho dự án của bạn. Tương tự như this question.

+0

vì tôi đảm bảo rằng nó không thể không phải là nguyên nhân thứ nhất và thứ ba, tôi đoán rằng đây có thể là một vấn đề thừa kế. –

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