100

RESTfulの規則は、単一のオブジェクトに対して複数の名詞を使用することを示しています。

ASP.NET MVCコントローラーに名前を付けるための複数形の規則は何
ProductControllerですかProductsController

4

3 に答える 3

194

複数形または単数形を使用し、一貫性を保つという以前の回答に反対する必要があります。各コントローラーは、単一のエンティティと複数のエンティティのどちらと対話するかに基づいて、異なる規則を使用する必要があります。特に、コントローラ名はデフォルトでURLで使用されるためです。

プロジェクトテンプレートは単数(HomeController、AccountController)を使用しますが、ホームは1つだけであり、アカウントアクションはセッションの単一のアカウントでのみ機能します。/ homesのURLがホームページにアクセスすることも、アカウント設定を管理するために/accountsにアクセスすることも期待していません。

複数のHomesController、複数の家の一覧表示と検索に関連するメソッドを持つ不動産Webサイト/ homes/new-listingsで機能します。

于 2015-08-12T15:03:48.590 に答える
48

一部のMVCフレームワークは複数形を使用しますが、MVCプロジェクトテンプレートにはAccountControllerというコントローラーが含まれているため、単数形の命名が提案されます。

それは問題ではありません。Asp.net MVCフレームワークのほとんどのものと同様に、選択はあなた次第です。実際の慣習はありません。

私の個人的な意見ですが、重要なのは、スキームを選択して一貫性を保つことです。

于 2012-09-17T15:45:24.163 に答える
13

Entity FrameworkエンティティのMVCスキャフォールディングを使用してコントローラーを追加すると、VS2013はコントローラー名を複数形にするため、エンティティーのコントローラーを複数形にするデフォルトを使用することをお勧めします。

更新:気が変わった。LouDは正しいです。これは、コントローラーのコンテキストによって異なります。

于 2014-04-23T14:58:43.107 に答える