Подтвердить что ты не робот

ASP.NET MVC для именования плюрализации

Соглашения RESTful показывают использование множественных существительных над особыми объектами.

Что такое соглашение о плюрализации для именования контроллеров ASP.NET MVC, т.е.
ProductController или ProductsController?

4b9b3361

Ответ 1

Некоторые MVC Framework используют множественные числа, однако шаблоны проектов MVC содержат контроллер AccountController, что позволяет указывать одноуровневое присвоение имен.

Это не имеет значения. Как и большинство вещей в инфраструктуре MVC Asp.net, выбор за вами. Нет реальных соглашений.

Это мое личное мнение, но важно то, что вы выбираете схему и будьте последовательны!

Ответ 2

Мне придется не согласиться с предыдущими ответами на использование множественного числа или единственного числа и быть последовательным. Каждый контроллер должен использовать другое соглашение, основанное на взаимодействии с одним или несколькими объектами. Тем более, что имя контроллера используется по умолчанию в URL.

В то время как в шаблонах проекта используется сингулярный (HomeController, AccountController), действует только одна операция "Домой" и "Учетная запись" только для отдельной учетной записи сеанса. Я бы не ожидал, что URL-адреса/дома будут доступны на главной странице, и я не ожидал, что вы перейдете в /accounts для управления настройками моей учетной записи.

Множество HomesController будет работать на сайте недвижимости, где были методы, связанные с листингом и поиском нескольких домов:/homes/new-listings.

Ответ 3

Когда вы добавляете контроллер с использованием подмостей MVC для объекта Entity Framework, VS2013 делает имя контроллера множественным, поэтому я бы предложил использовать это значение по умолчанию, которое делает контроллеры для объектов множественными.

ОБНОВЛЕНИЕ: Я передумал. LouD является правильным. Это зависит от контекста контроллера.