2

Visual Studio 2012 の ASP.NET Web API プロジェクト テンプレートは特殊な MVC4 プロジェクトであり、そのようなプロジェクトのインスタンスを作成した後、[コントローラー] フォルダーを右クリックすると、コントローラー ジェネレーターをトリガーする [追加 >> コントローラー] メニュー項目が表示されます。(足場)

一方、ASP.NET Web API サーバーをコンソール アプリケーションでホストすることもできます。これは、ドキュメントではセルフ ホスト アプリケーションと呼ばれています。

http://www.asp.net/web-api/overview/hosting-aspnet-web-api/self-host-a-web-api

私の質問は、セルフ ホスティング コンソール アプリケーションを開発している場合、「Controller Scaffolding」をどのように使用できますか?

4

2 に答える 2

1

スキャフォールディングは、パッケージ マネージャー コンソール (例:ここ) を介して引き続きサポートされます。

ただし、MVC 固有の [コントローラーの追加] ダイアログは、実際には MVC プロジェクト ファイル用に予約されています。

ただし、セルフ ホスト プロジェクトにこのダイアログを含めるように強制することはできます。

これは、プロジェクト ファイルに行を追加して、Visual Studio を「騙し」、セルフ ホスト アプリが MVC アプリであると認識させることで実現できます。ハイブリッド MVC/WebForms ASP.NET アプリケーションでの「コントローラーの追加」/「ビューの追加」の詳細については、この質問を参照してください。

もし、あんたが:

  1. プロジェクト ルートの下に Controllers フォルダーを作成します。
  2. セルフ ホスト プロジェクト ファイルを右クリックし、[プロジェクトのアンロード] をクリックします。
  3. マウスの右ボタンでセルフ ホスト プロジェクト ファイルを「編集」
  4. [Xml] > [Project] -> [PropertyGroup] の下に、手順の下に表示されているノードを追加します。
  5. 保存
  6. マウスの右ボタンで自己ホスト プロジェクト ファイルをクリックし、プロジェクトをリロードします

    <ProjectTypeGuids> 
        {E3E379DF-F4C6-4180-9B81-6769533ABE47};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}
    </ProjectTypeGuids>
    

これが完了したら、TT ファイル (足場) をいじり始めて、セルフ ホスティングhttp://www.hanselman.com/blog/ModifyingTheDefaultCodeGenerationscaffoldingTemplatesInASPNETMVC.aspxをより便利/具体的にすることができます。

于 2012-11-17T13:10:02.227 に答える
0

これは現時点では不可能だと思います。このスキャフォールディングのサポートは、現在 MVC 4 プロジェクトに固有のものです。

于 2012-11-16T21:23:17.423 に答える