4

私はMVC 4のために "Empty"を作成しました。いくつかのことをコーディングした後、 "Web API"プロジェクトが優れていることに気付きました。私はそれ以上のWeb APIプロジェクトに変換する方法はありますか?以下は、私が言及しているもののスクリーンショットです。どんな助けでも大歓迎です。MVCの空のプロジェクトをWeb APIに変換するには?

enter image description here

答えて

6

MVCプロジェクトにWeb APIコントローラを追加できます。ソリューションエクスプローラで、[コントローラ]フォルダを右クリックし、[コントローラの追加]を選択し、[Web APIコントローラ]を選択します。

唯一必要なことはルーティングです - 私は "空の" MVC 4プロジェクトには既定でWeb APIルートが既に含まれていると思うので、OKにしてください。以下のようなものを探します。

routes.MapHttpRoute(
     name: "DefaultApi", 
     routeTemplate: "api/{controller}/{id}", 
     defaults: new { id = RouteParameter.Optional } 
); 

しかし、あなたは、既存のMVC コントローラは、Web APIコントローラに変換したい場合は、それを行うには自動的に方法はありません。

+0

私はApiControllerを追加したい既存のMVC 4プロジェクトを持っています。しかし、Controllersフォルダを右クリックしてAdd Controllerを選択すると、スカッフォールディングテンプレートのドロップボックスには、新しいプロジェクトで最初に作成された6つのMVCと3つの標準MVCオプションがあります。 WebAPIプロジェクト私は追加する必要があるいくつかの新しい参照があると推測している、多分いくつかの設定変更、これを行うには?テンプレートの選択肢を表示する方法がずっと少なくなりました。私はこれを追加/変換する簡単な方法があると思っていますか?どうも! – Funka

1

Web APIを使用すると、データを公開したい場合は、より良いだけです。ビュー(RazorまたはWebフォーム)をレンダリングする必要がある場合は、ASP.NET MVCを使用します。

さまざまなことを行うため、自動コンバージョンはありません。

1

本当にWeb APIプロジェクトに移行する場合は、新しい空のWeb APIプロジェクトを作成するのが最も簡単です。次に、古いプロジェクトのすべてのファイルをコピーし、古いプロジェクトを削除して新しいプロジェクトの名前を変更します。

もう1つのオプションは、新しい空のWeb APIプロジェクトを作成することです。次に、テキストエディタでプロジェクトファイルを開き、古いプロジェクトファイルと比較し、生ファイルに必要な変更を加えます。それはすべてXMLであるので、それほど難しいはずはありません。

関連する問題