web-dev-qa-db-ja.com

MVC3プロジェクトのVS2013での限定的なIntelliesense

最近、vs 2013 Professionalをインストールし、サイドプロジェクトアプリケーションの1つを開きました。このプロジェクトは、レイザービューエンジンを使用したMVC3アプリケーションです。ビュー(cshtml)を編集しているときに、2012年に慣れていたインテリセンスにアクセスできないことに気付きました。2すぐに気付いた例は、@ Url.Content()と@Viewbagです。コードは引き続きコンパイルおよび実行され、インテリセンスはありません。それを少しいじった後、私はアップグレードログをチェックして十分に見つけたはずだと思いました...

「IntellisenseforRazor(CSHTMLおよびVBHTML)ファイルはHTMLマークアップに制限されています。MVCのアップグレード方法の詳細については、 http://go.Microsoft.com/fwlink/?LinkID=317645 を参照してください。 3プロジェクト。」

提供されているリンクは、mvc3からmvc4にアップグレードするように指示しているだけです。私の質問は:それは私の唯一の選択肢ですか?古いmvc3プロジェクトでVS2013を使用するには、それらをすべてアップグレードする必要がありますか、それともvs2013はmvcレイザーファイルで完全なインテリセンスをサポートしますか?

18
ajzeffer

ここでこれを見つけました...

間もなく、VS2013にMVC5の新しいバージョンが表示されます。 MVC5はVS2013に組み込まれます。 MVC3はVS2013ではサポートされません。前回channel9で確認しました。そのため、VS2013のみをインストールしたか、古いバージョンを持っていない人は、MVC3に残っているプロジェクトで問題が発生します。このエラーは、MVC4および5のインストールに、ASP.NETMVCのバージョン3で使用されるDLLが含まれていないために発生します。

http://geekswithblogs.net/anirugu/archive/2013/10/16/how-to-migrate-asp.net-mvc-3--mvc4-project-to.aspx

プロジェクトをMVC5にアップグレードすることになりました...新しいプロジェクトを作成し、モデル、ビュー、およびコントローラーフォルダーのすべてのコンテンツを持ち込みました。また、前のプロジェクトでインストールしたいくつかのパッケージを含めるようにwebconfigを更新する必要がありました。

19
ajzeffer

各ビュー内に次の2行を追加します。

@inherits System.Web.Mvc.WebViewPage<dynamic>
@using System.Web.Mvc.Html

インテリセンスはVS2013のMVC3で再び機能します

13
SergeyT

ソリューションエクスプローラーからプロジェクトをアンロードして、再度ロードしてみてください。インテリセンスを取り戻すことができるかどうかを確認してください。それは私のために働いた。

3
Xinan

1-ツールからNugetパッケージマネージャーコンソールを選択します2-このPMを使用してsystem.web.mvc3をダウンロードします> Install-Package Microsoft.AspNet.Mvc -Version 3.0.20105.1

0
Daniel Raouf