Las convenciones RESTful indican el uso de sustantivos en plural sobre objetos singulares.
¿Cuál es la convención de pluralización para nombrar controladores ASP.NET MVC, es decir,
ProductController
o ProductsController
?
Las convenciones RESTful indican el uso de sustantivos en plural sobre objetos singulares.
¿Cuál es la convención de pluralización para nombrar controladores ASP.NET MVC, es decir,
ProductController
o ProductsController
?
Respuestas:
Algunos marcos MVC usan plurales, sin embargo, las plantillas de proyecto MVC contienen un controlador llamado AccountController, lo que sugiere un nombre único.
No importa. Como con la mayoría de las cosas en el marco MVC de Asp.net, la elección es suya. No hay convenciones reales.
Es mi opinión personal, pero lo que importa es que elijas un plan y seas coherente.
Voy a tener que estar en desacuerdo con las respuestas anteriores de usar plural o singular y ser consistente. Cada controlador debe usar una convención diferente en función de si interactúan con una o varias entidades. Especialmente porque el nombre del controlador se usa por defecto en la URL.
Si bien las plantillas de proyecto usan singular (HomeController, AccountController), solo hay un Inicio y las acciones de Cuenta solo operan en la cuenta única para la sesión. No esperaría que las URL de / homes accedan a la página de inicio, ni esperaría ir a / accounts para administrar la configuración de mi cuenta.
El HomesController plural sería trabajar para un sitio web de bienes raíces que tenía métodos relacionados con la lista y buscar múltiples viviendas: casas / / nuevos anuncios.
UsersController
tiene sentido si diseña sus rutas como /api/users
(todos los usuarios) y /api/users/{userId}
(un solo usuario)
/api/user/{userId}
embargo, no tendría tanto sentido, podría argumentar que incluso en el caso de tratar con múltiples usuarios, su controlador refleja el tipo de entidad, por HomeController
lo tanto , trataría con entidades de tipo Home
, por lo tanto, /Home/{homeId}
y/Home/All-Homes/
Cuando agrega un controlador utilizando el andamio MVC para una entidad de Entity Framework, VS2013 hace que el nombre del controlador sea plural, por lo que sugeriría usar ese valor predeterminado que hace que los controladores para las entidades sean plurales.
ACTUALIZACIÓN: cambié de opinión. LouD es correcto. Depende del contexto del controlador.