ho questo nella parte superiore di ciascuna delle diverse traduzioni delle "Condizioni di utilizzo" pagina:@ Url.Action ottenere Lunghezza = 2 allegata
<li><a href="@Url.Action("Index", "Terms")">English</a></li>
<li><a href="@Url.Action("Index", "Terms", "de")">Deutsch</a></li>
<li><a href="@Url.Action("Index", "Terms", "fr")">Français</a></li>
<li><a href="@Url.Action("Index", "Terms", "it")">Italiano</a></li>
<li><a href="@Url.Action("Index", "Terms", "nl")">Nederlands</a></li>
<li><a href="@Url.Action("Index", "Terms", "hu")">Maygar</a></li>
<li><a href="@Url.Action("Index", "Terms", "es")">Español</a></li>
<li><a href="@Url.Action("Index", "Terms", "zh")">简体中文</a></li>
<li><a href="@Url.Action("Index", "Terms", "pt-pt")">European Português</a></li>
<li><a href="@Url.Action("Index", "Terms", "pt")">Português</a></li>
Questa è l'azione che dovrebbe gestire gli scatti:
public class TermsController : Controller
{
public ActionResult Index(string id)
{
switch (id)
{
case "de":
return View("de");
case "fr":
return View("fr");
case "it":
return View("it");
case "nl":
return View("nl");
case "hu":
return View("hu");
case "es":
return View("es");
case "zh":
return View("zh");
case "pt":
return View("pt");
case "pt-pt":
return View("pt-pt");
default:
return View();
}
}
e queste sono le mie vie:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Terms",
"{controller}/{id}",
new { controller = "Terms", action = "Index" }
);
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
routes.MapRoute(
"ThankYou",
"{controller}/{action}/{email}/{id}"
);
}
Dal principale (vale a dire, in inglese) pagina termini, il primo (cioè, inglese) Link sembra cor rect:
http://localhost:65391/Terms/
Perché l'altro (vale a dire, stranieri) generato URL simile a questa?
http://localhost:65391/Terms/?Length=2
anche, stranamente, se mi digitare manualmente
http://localhost:65391/Terms/de
per esempio, e andare alla pagina Termini in tedesco, poi il primo collegamento ipertestuale (vale a dire, di nuovo alla pagina di termini inglesi) sguardi in questo modo:
http://localhost:65391/Terms/de
Vai qui per vedere il luogo reale:
http://inrix.com/traffic/terms
utilizzo di un solo tag rende la vostra domanda difficile da scoprire. Dovresti taggarlo almeno con il tag vesion MVC. come asp.net-mvc-3 o asp.net-mvc-4 ecc. – nemesv