Asp.net Mvc utilise la bibliothèque de routage de Microsoft. Il est donc très facile d'obtenir ce type de structure sans penser à la structure du dossier ou aux extensions de fichiers. Avec asp.new mvc, vous ne pointez pas une requête sur un fichier spécifique. Au lieu de cela, vous pointez sur une action qui gère la demande et utilisez les paramètres pour déterminer ce qui doit être rendu et envoyé au client. Pour mettre en œuvre votre exemple, vous pouvez faire quelque chose comme ceci:
_routes.MapRoute(
"Product",
"Business/Manufacturing/Category/Product{id}",
new {controller = "Product", action = "Details", id = ""}
);
Cette route détectera l'URL que vous avez décrit et exécuter l'action nommée « Détails » sur un contrôleur nommé « ProductController » (si vous utilisez les paramètres par défaut) . Cette action peut ressembler à ceci:
public ActionResult Details(int id) {
return View(string.Format("Product{0}", id);
}
Cette action rendra ensuite des vues en fonction de ce identifiant le produit ont (le nombre après « Produit » à la fin de votre exemple url). Cette vue doit être située dans le dossier Views/Product si vous utilisez les paramètres par défaut. Ensuite, si vous ajoutez une vue nommée "Product1.aspx" dans ce dossier, c'est l'affichage qui sera rendu lorsque vous visiterez l'URL dans votre exemple.
Tout ce qu'il est difficile de faire de cette façon, je le recommande fortement. Vous aurez à faire beaucoup de travail en double, même si vous avez seulement quelques produits et utilisez des vues partielles dans un bon moyen de minimiser les duplications ui. Je vous recommande d'utiliser une base de données ou un autre type de stockage pour vos produits et d'utiliser une seule vue comme modèle pour rendre le produit. Vous pouvez utiliser le même itinéraire pour cela. Vous venez d'éditer votre action un peu. Il peut ressembler à ceci:
public ActionResult Details(int id) {
var product = //get product by id from database or something else
return View(product);
}
De cette façon, vous pouvez fortement saisir votre point de vue d'un objet produit et vous n'aurez pas beaucoup double emploi. Le moteur de routage est très flexible, et quand vous avez joué avec et appris comment cela fonctionne, vous serez capable de changer votre URL de la manière que vous voulez sans changer d'autre code ou déplacer des fichiers.
Je ne reçois pas le vote vers le bas, semble être une bonne question pour moi ... – RageZ