2010-04-13 32 views
32

Tôi đã cài đặt .net 4 trong máy chủ.
Bây giờ tôi không biết nếu tôi phải cài đặt MVC 2 cho VS2008 hoặc những gì vì tôi đã nhận lỗi này:Có phải asp.net MVC2 có trong khung 4.0 .net không?

Could not load file or assembly 'System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

Trả lời

35

VS 2010 đi kèm với MVC 2, nhưng nó không phải là một phần của .NET Framework thích . Điều này có nghĩa rằng nếu bạn tải xuống .NET Framework 4 redistributable, nó sẽ không bao gồm thời gian chạy MVC 2.

Nhưng vì MVC có thể triển khai được, điều này là tốt. Ứng dụng của bạn - khi được triển khai lên máy chủ .NET 3.5 SP1 hoặc .NET 4 - sẽ chỉ sao chép System.Web.Mvc.dll vào thư mục/bin của nó và mọi thứ sẽ chạy như mong đợi. MVC chạy tốt trong Medium Trust.

Để làm một máy chủ rộng cài đặt bạn cần phải tải AspNetMVC2_VS2008.exe từ here, đổi tên .exe-.zip và bên trong mvcruntime tiểu thư mục mà bạn sẽ tìm thấy file AspNetMVC2.msi.

Sau đó, bạn phải chạy:

msiexec /i AspNetMVC2.msi /l*v .\mvc.log MVC_SERVER_INSTALL="YES" 
+0

Tôi đã sai; Cảm ơn vì đã sửa tôi. – SLaks

+0

@Levi: Cảm ơn. Sao chép địa phương và công trình. Haacked và team phải chuẩn bị bản phát hành cuối cùng cho .net 4 –

+0

@Eduardo - Không có kế hoạch để cuộn khuôn khổ MVC vào khuôn khổ .NET. Điều này có thể thay đổi, rõ ràng, nhưng nó có khả năng áp đảo rằng tất cả các bản phát hành trong tương lai sẽ tiếp tục là out-of-band. – Levi

6

theo mặc định System.Web.Mvc.dll không được bao gồm khi bạn biên dịch một dự án MVC 2; bạn phải thay đổi cài đặt "Sao chép Địa phương" thành Đúng trên thuộc tính Tham chiếu để lấy tệp trong/bin

+0

Cảm ơn! Nó hiệu quả tuyệt vời đối với tôi. Tôi không cần phải sao chép tập tin cục bộ trên máy tính của tôi, nhưng tôi đã cần phải khi chạy trên máy chủ. Bạn có thể giải thích tại sao điều này là cần thiết? –

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