2012-06-06 41 views
13

Tôi đã tạo ứng dụng MVC3 trong Visual Studio 10 Khi chỉnh sửa chế độ xem "@Model", "@Viewbag" và "@Url", tất cả đều xuất hiện hợp lệ."@Model", "@Viewbag" và "@Url" "không tồn tại trong ngữ cảnh hiện tại" Razor MVC3 khi sử dụng Visual Studio 11 Beta/Visual Studio 2012 RC

Gần đây, tôi đã cài đặt Visual Studio 11 Beta và khi chỉnh sửa (hoặc tạo) chế độ xem, tôi nhận được lỗi "x không tồn tại trong ngữ cảnh hiện tại" cho các từ khóa ở trên và rõ ràng là không có ý thức.

Tôi có kể từ khi cài đặt Visual Studio 2012 RC hy vọng nó chỉ là một vấn đề Visual Studio 11 Beta .... nó đã không được. Kể từ khi chạy nó trong Visual Studio 2012 RC tôi đã nhận thấy từ khóa "@Html" tồn tại tuy nhiên danh sách intelli-sense bị giới hạn - bất cứ điều gì liên quan đến Mô hình (ví dụ "@ Html.EditorFor()") và bất cứ điều gì trong nhóm "Render" bị thiếu.

Nếu tôi chạy dự án, mọi thứ đều ổn.

Bây giờ, nếu tôi tạo dự án mới trong Visual Studio 11 Beta/2012 RC, tất cả các từ khóa đều được nhận dạng.

Có điều gì tôi cần chỉnh sửa trong tệp dự án của mình để làm cho tệp hoạt động chính xác không?

Chỉnh sửa - Thêm câu trả lời, được sao chép từ nhận xét của tôi bên dưới Đối với những người nâng cấp lên VS 2015, nó không hỗ trợ MVC 4 bạn cần nâng cấp dự án lên MVC5. Xem - http://www.asp.net/mvc/overview/releases/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web-api-2

+0

Một anh chàng tôi đã làm việc với về cơ bản lỗi chính xác này ngày hôm qua trong VS11. IntelliSense sẽ không thấy '@ Html.', nhưng mã sẽ chạy tốt. Rất tiếc, tôi không thể tìm thấy bài đăng SO của anh ấy vào lúc này để liên kết chéo chúng ... nhưng tôi ngửi thấy một lỗi VS ... – CodingWithSpike

+0

Đối với những người nâng cấp lên VS 2015, nó không hỗ trợ MVC 4 bạn cần nâng cấp dự án tới MVC5 - http://www.asp.net/mvc/overview/releases/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and -web-api-2 –

Trả lời

16

Thêm các thiết lập sau đây để appSettings phần web.config tập tin chính của bạn:

<add key="webpages:Version" value="1.0.0.0"/> 

Từ Connect: http://connect.microsoft.com/VisualStudio/feedback/details/732597/visual-studio-11-beta-razor-intellisense-not-working

+0

Đúng rồi! Cảm ơn! Tôi đoán các tìm kiếm trên Google của tôi hơi quá cụ thể. –

+0

Cảm ơn, điều này đã khiến tôi phát điên! – conroyrw

+8

Với phiên bản phát hành của Visual Studio (vừa mới xuất hiện), tôi phải xóa mục trang web 1.0.0.0 và quay lại sử dụng để lấy lại IntelliSense. – gdoten

5

Bản cập nhật cho vs2015;

Look cho các phần tử này trong web.config chính của bạn

<dependentAssembly> 
    <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" /> 
    <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> 
    </dependentAssembly> 

và để các "newVersion" tham số trong trang web của bạn: Phiên bản

tức

<add key="webpages:Version" value="3.0.0.0" /> 
+0

Bạn có sửa chữa cho VS 2013 không? –

2

Đối với bất cứ ai mà lượt truy cập này thông qua tìm kiếm, tôi đã có thể tự giải quyết vấn đề này bằng cách làm theo hướng dẫn trên trang này, từng dòng một, cho đến khi tôi có thể xây dựng lại dự án. Một khi tôi xây dựng lại và tải lại dự án, tất cả các intellisense đã trở lại cho tôi.

Đây là liên kết: http://www.asp.net/mvc/overview/releases/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web-api-2

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