2010-03-19 21 views
5

Tôi gặp sự cố khi triển khai ứng dụng MVC2 vào lưu trữ của mình. Nó hiển thị lỗi sau:Sự cố khi triển khai MVC2 - Không thể tải loại 'System.Web.Mvc.UrlParameter'

Không thể tải loại 'System.Web.Mvc.UrlParameter' từ assembly 'System.Web.Mvc, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35'.

Có vẻ như nó không hiểu tính năng "thông số URL tùy chọn" mới của MVC2. Đây chỉ là một ứng dụng thử nghiệm đơn giản mà tôi đã tạo bằng thuật sĩ "Dự án mới" trong VWD 2008. Nó hoạt động tốt ở cả hai máy chủ web IIS và Visual Studio. Các trang web MVC1 đang hoạt động tốt trên máy chủ lưu trữ. Tôi đã liên lạc với bộ phận hỗ trợ lưu trữ và họ đã cài đặt MVC2 nhưng vấn đề vẫn tồn tại. Các trang web đang làm việc trong chế độ đường ống tích hợp ASP.NET 2.0.

Có ai biết tại sao điều đó xảy ra không?

+0

Tôi đã gặp vấn đề tương tự và tôi tin rằng đó là phiên bản MVC cũ được cài đặt trên gói lưu trữ được chia sẻ của tôi, tuy nhiên việc thuyết phục công ty lưu trữ web của tôi về vấn đề này là một vấn đề khác. Tôi tò mò muốn biết liệu có bất kỳ trường hợp nào khác có thể gây ra sự cố này không ... – nukefusion

+0

Có, nó đã được sửa trên máy chủ của tôi sau khi cài đặt .NET 4 với MVC2 mới nhất. Nếu có ai gặp vấn đề tương tự - hãy thử nâng cấp .NET. – Evgenii

Trả lời

1

CỐ ĐỊNH:

Thay đổi id = UrlParameter.Optional thành id = "" trong Global.asax.

Thay đổi này ít nhất làm cho trang web hiển thị.

2

Bạn nên tháo RCC2 RC rồi tải xuống và cài đặt MVC2 RC2.

1

Tôi cũng gặp sự cố này khi triển khai ứng dụng MVC2 của mình cho máy chủ của mình. Có ai đưa ra một nguyên nhân cho việc này.

Thay đổi tham số url.Thêm vào một giá trị cố định sẽ thay đổi hành vi của ứng dụng, vì vậy, tôi hơi không hài lòng khi thực hiện việc này.

Được phép của Phil Haack (Tôi muốn nhận tín dụng) nhưng hãy thử bin triển khai lắp ráp System.Web.Mvc bằng cách chuyển đến thuộc tính của tham chiếu đến System.Web.Mvc và thay đổi Sao chép địa phương thành đúng.

Chết ấn tượng rằng Phil đã đầu tư thời gian và năng lượng để trợ giúp việc này.

+0

CopyLocal là người chiến thắng cho tôi, cảm ơn –

0

Ứng dụng của tôi đã ném ngoại lệ này khi không thể tìm thấy tệp dll.

Tôi sử dụng Microsoft.Web.Mvc.AspNet4.dll từ ASP.NET MVC 2 Futures. Tôi đã có các tập tin dll trên máy trạm của tôi, nhưng đã không triển khai nó lên máy chủ web của tôi.

6

Điều bạn phải làm là sao chép tệp MVC dll cục bộ. Trong giải pháp Explorer visual studio làm điều này: Nhấp vào nút Show All Files

alt text

Sự sụt giảm xuống phần tài liệu tham khảo và chọn tài liệu tham khảo System.Web.Mvc

S

Sau đó, trong cửa sổ thuộc tính thay đổi Sao chép địa phương thành true.

alt text

+1

giải pháp này vấn đề của tôi về: Không thể tải tệp hoặc lắp ráp 'System.Web.Mvc, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35' hoặc một trong số Hệ thống không thể tìm thấy tệp được chỉ định. –

0

Tôi đã nhận lỗi nhưng tôi đang sử dụng MVC2 với .NET Framework 3.5 và lớp được nhắm mục tiêu đến .NET Framework 4.0.

Tôi do nhầm lẫn được tải xuống và nhắm mục tiêu theo lắp ráp .NET Framework 4.0 :(

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