tengo URLs como:cómo manejar esta ruta?
- /es/blog (muestra vista o un blog entradas)
- en el blog Pays-gran-cocinar-y-ser-justo recompensado (muestra artículo///blog con urltitle)
- /es/blog/por qué, en lugar de lo dietista-cocinero (espectáculos elemento blog con urltitle)
de rutas ¿Cuántos seguidores he definido
- A: ruta "es/blog/{página del artículo}" con página del artículo limitación = @ "\ d"
- B: ruta "es/blog"
- C: Ruta "es/blog/{urltitle} {página/comentario } "con la página restricción comentario = @" \ d "
- d: ruta" es/blog/{urltitle} "
pregunta 1: esto funciona bien, pero tal vez hay una solución mejor con menos pistas?
Pregunta 2: añadir un nuevo artículo, tengo una AddArticle método de acción en Blog controlador. Por supuesto, con las rutas definidas anteriormente, la URL "/ es/blog/addarticle" sería asignar a la ruta D, donde addarticle sería el urltitle -que no es correcta, por supuesto. Por lo tanto, he añadido la siguiente ruta:
- E: ruta "com/blog/_ {acción}"
y por eso ahora carpeta de la URL "/ es/blog/_addarticle" a esta ruta, y ejecuta el método de acción correcto. Pero me preguntaba si hay una mejor manera de manejar esto.
Gracias por el consejo.
Buena pregunta. Estoy realmente interesado en cualquier respuesta. – Phil
¿Tal vez la restricción de ruta personalizada podría ser la solución más elegante? –
bien, para la pregunta 2 Encontré la respuesta yo mismo. Creé una restricción personalizada llamada ExcludeConstraint y cambié la ruta D como: ruta "nl/blog/{urltitle}" con la restricción "new {urltitle = new ExcludeConstraint (new List() {" addarticle "," addcomment "," gettags " "})}));". Ahora, mi URL se mantiene limpia, como/nl/blog/addcomment –