mam to w górnej części każdej z kilku przekładów „Warunki użytkowania” stronie:@ Url.Action coraz Długość = 2 dołączany
<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>
Jest to działanie, które ma obsługiwać kliknięcia:
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();
}
}
i to są moje trasy:
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}"
);
}
od głównej (czyli angielski) strona Warunki, pierwszy (czyli angielski) Opinie wygląda cor rect:
http://localhost:65391/Terms/
Dlaczego inne (tj. obce) wygenerowane adresy URL wyglądają tak?
http://localhost:65391/Terms/?Length=2
Również dziwne, gdybym ręcznie wpisać
http://localhost:65391/Terms/de
na przykład, i przejdź do strony Warunki w języku niemieckim, to pierwszy hiperłącze (czyli powrót do strony Angielsko) Zestawy tak:
http://localhost:65391/Terms/de
Go tutaj, aby zobaczyć rzeczywistą stronę:
http://inrix.com/traffic/terms
Stosując tylko jeden tag sprawia, że pytanie trudne do odkrycia. Powinieneś oznaczyć go co najmniej dodatkowym znacznikiem VV MVC. jak asp.net-mvc-3 lub asp.net-mvc-4 itp. – nemesv