Ne sorduğundan emin değilim, bu yüzden cevabım yanlışsa, istediğim şeyi tahmin ediyorum.
Global.asax
ürününüze her zaman başka bir rota ekleyebilirsiniz. Bu genellikle 'norm dışında' vakalarla uğraşmanın en kolay yolu. varlığın birden fazla türü bu kullanacağız eğer
routes.MapRoute(
"ProductList",
"{language}/{products}/{action}/",
new { controller = "Products", action = "List", language = "en" });
Ayrıca daha genel {controller}
ürünler yerine yapabilirsiniz: ürünlerin listesini dönmek isterseniz
, bu yolu kullanacağız rota. İhtiyaçlarınız için değiştirmelisiniz.
Örneğin, bu Herhangi bir ürün listesini almak için kullanabileceği genel bir rota yapmak:
routes.MapRoute(
"ProductList",
"{language}/{controller}/{action}/",
new { controller = "Products", action = "List", language = "en" });
ne yapar o her zaman Default
önce yerleştirmek gerektiğini (bir rota oluşturur olmasıdır rota), "Kullanıcı ne girerse, bana istediği kontrolörü ve eylemi ver" yazıyor. (/en/Products/List
veya /en/Users/List
gibi).
Bu denetleyiciyi ziyaret etmek için, aşağıdakilere gitmeniz yeterlidir: yoursite.com/en/products/list
. Denetleyiciyi ziyaret etmek için HTMLActionLink
'u da kullanabilirsiniz.
<%=Html.ActionLink("Product", "List", new { controller = Products }, null) %>
benim IDE açık olmadan bu yazıyorum, bu nedenle
ActionLink
da içinde bir hata olabilir.
Muhtemelen George gibi başka rota önerir ama eklemek gerekir
Bu yer nerede olacak? –
UrlHelper – Gregoire
'u genişletecek bir yardımcı sınıfta https://stackoverflow.com/questions/8830052/how-do-i-get-the-controller-and-action-names-from-the-referrer-uri –