ASP.NET MVC 4を既存のasp.net Webサイトに統合しました。どちらも正常に動作しますが、Visual Studio IDE内でコントローラー/ビューを作成するためのメニュー/ショートカットは表示されません。これらはASP.NET MVCテンプレートでのみ使用できますか?
これらはASP.NET MVCテンプレートでのみ使用できますか?
はい、でもごまかすことができます。 Visual Studioがこれらのショートカットを表示する方法は、プロジェクトの種類を確認することです。それがASP.NET MVCプロジェクトであることがわかると、それらが利用可能になります。しかし、ASP.NET MVCプロジェクトであることをどのように認識していますか?結局のところ、ASP.NET MVCはASP.NETプロジェクトです。
.csproj
ファイルを開き、ASP.NET MVC 4プロジェクトの<ProjectTypeGuids>
ノードを探します。次のようなものが表示されます。
<ProjectTypeGuids>{E3E379DF-F4C6-4180-9B81-6769533ABE47};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
通常のASP.NETプロジェクトの.csproj
ファイルを開き、リストの最初の項目として{E3E379DF-F4C6-4180-9B81-6769533ABE47}
GUIDを追加するだけです(プロジェクトを実行しない場合は、これですべてです。ASP.NETMVC固有のコンテキストメニューがWebFormsプロジェクトに表示されます。
GUIDを変更する手順
<ProjectTypeGuids>
タグは、これらのGUIDのいずれかを最初に追加します
{E3E379DF-F4C6-4180-9B81-6769533ABE47};
{E53F8FEA-EAE0-44A6-8774-FFD645390401};
MVC 5を使用している場合は、このキーを追加してください
{E3E379DF-F4C6-4180-9B81-6769533ABE47};
の初めに。他のGUIDは機能しません。
MVCプロジェクトを更新するだけです。 Nuget Package Managerコンソールでこのコマンドを実行します。
更新パッケージMicrosoft.AspNet.Mvc
回答2は正しい間違ったGUIDでした
{E53F8FEA-EAE0-44A6-8774-FFD645390401}
vS2010のMVCに必要なものです
ソリューションエクスプローラーでプロジェクトを右クリックして、プロジェクトをアンロードし、プロジェクトを編集し、下のチャートを使用してタグを変更してから、プロジェクトをリロードする必要があります。適切なGUID=をcsprojファイルのリストの先頭に貼り付けます。
MVCのさまざまなバージョンのさまざまなGUID:
ASP.NET MVC 1 {603C0E0B-DB56-11DC-BE95-000D561079B0}
ASP.NET MVC 2 {F85E285D-A4E0-4152-9332-AB1D724D3325}
ASP.NET MVC 3 {E53F8FEA-EAE0-44A6-8774-FFD645390401}
ASP.NET MVC 4 {E3E379DF-F4C6-4180-9B81-6769533ABE47}
ASP.NET MVC 5 {349C5851-65DF-11DA-9384-00065B846F21}
私にとっては、それが存在すると思っていた場所(ビューフォルダを右クリックして「追加」をクリックすると表示されるメニューの上部)から欠落していましたが、「新規」の下のサブコンテキストメニューで見つかりましたテンプレートから '!私は再シャーパーをインストールしました、それが原因で起こったと思います(Visual Studio 2012も):
私はVS2012にいて、ディミトロフの答えを試しました(特定のGUIDをプロジェクトファイルのProjectTypeGuidsに追加します)。ページ。
作業中のMVCプロジェクトのバージョン用のVSツールが不足していたことがわかり、このツールを(プロジェクトファイルを編集するのではなく)インストールすることで問題が解決しました。
Visual Studio 2012用のASP.NETおよびWeb Tools 2013.1のダウンロードページ
このダウンロードリンクは、次のブログ投稿から見つけました。
WebサイトとしてMVCプロジェクトを開いたときに同じ問題が発生しました。 Open-> Projectを使用してソリューションを再開しましたが、この機能は期待どおりに機能しました。
私はこれが古い投稿であることを知っていますが、MVC 5プロジェクトのVS2013とVS2012の間でこの切り替えに遭遇しました。私が抱えていた問題は、使用していたMVCテンプレートのバージョンがVisual Studioの更新プログラムからインストールされなかったことです。 VS2012はその後リリースされたため、MVC5には付属していなかったため、VS2012がテンプレートを追加するには更新が必要でした。私が想像するVS2010とMVC4と同じです。
とにかく、Microsoftからアップデートをダウンロードすると、別のバージョンがプロジェクトを開いて保存したときに、上記の修正を使用すると再び消えてしまうという問題が解決しました。
VS2012 MVC5アップデートへのリンクは次のとおりです。ツールの更新とVSプラグインの両方をダウンロードしてインストールしてください。
http://www.Microsoft.com/en-us/download/details.aspx?id=41532
VS2015で同じ問題を抱えていたため、ProjectTypeGuidsのコンテンツを次のように変更できました。
{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}
これがVS 2017で私にとってうまくいったものです。
最初に、新しい空のMVCプロジェクトを作成できるかどうかを確認します。
そうでない場合-これは、いくつかのコンポーネントが欠落していることを意味します。 Visual Studio Installerを起動します(通常はC:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installer.exe
にありますが、「start」を押して「visual studio installer」と入力し始めるだけです)
「変更」を選択し、既存のすべてのコンポーネントをチェックして再実行します。
「ASP.NET Web開発」がチェックされていることを確認してください。
この問題は、コードリポジトリからソリューションの新しいコピーをチェックアウトしたばかりで、Microsoft.AspNet.Mvcを含むNuGetパッケージがまだダウンロードされていない場合にも発生する可能性があります。ソリューションを再構築すると、問題が修正されます。
他のすべてが失敗した場合(VS2015を再インストールする前)、VSキャッシュをリセットすることができます。これは私のために働いた(修復後-GUIDSに干渉しない)。このリンクに記載されているフォルダーの内容を削除するだけで(約30秒かかります)、コマンドを実行します。それにはさらに10秒かかります。 VSを再起動すると、VSの初回ユーザーの画面が表示されます。それは魅力のように働いた。
古いバージョンの
{F85E285D-A4E0-4152-9332-AB1D724D3325}
あなたは正しいです。これらのコンテキストメニューオプションの存在は、プロジェクトタイプ/テンプレート固有です。