Ich habe eine Website mit mehrsprachigen Funktionen. Ich benutze immer noch Cookies, um die Sprache zu erkennen. Wenn der Benutzer zum Beispiel "Englisch" auswählt, dann ändere ich den Cookie-Wert auf "EN" und serviere dem Nutzer eine "englische Seite".Multilanguage-Unterstützung in MVC
Ich möchte dieses Verhalten ändern und die Sprache von URL anstelle von Cookie lesen. So zum Beispiel, wenn die aktuelle URL für Produktseite
istwww.ezstore.com/product/asus-gtx970
Ich möchte die URL ändern
www.ezstore.com/en/product/asus-gtx970 for english
www.ezstore.com/fr/product/asus-gtx970 for french
ich dachte die RouteConfig
und lesen Sie die URL Ändern der Sprache Wert zu erhalten. Ist das möglich?
Mein aktueller RouteConfig
ist:
routes.MapRoute("Product", "Product/{id}", new {
controller = "Product",
action = "Index",
id = UrlParameter.Optional
});
routes.MapRoute(name: "Default", url: "{controller}/{action}/{id}", defaults: new {
controller = "Home",
action = "Index",
id = UrlParameter.Optional
});
Ich würde den HTTP_ACCEPT_LANGUAGE Header vom Browser gesendet werden. Das ist die Sprache, die der Benutzer bevorzugt. –
Schauen Sie sich [Artikel] (http://www.wiliam.com.au/wiliam-blog/web-design-sydney-using-mvc-routing-for-seo-friendly-urls-on-multilingual-sites) an . –
Ich denke, das ist die Antwort, die Sie brauchen [http://stackoverflow.com/questions/1712167/asp-net-mvc-localisation-route#answer-1712320](http://stackoverflow.com/questions/1712167/asp -net-mvc-localization-route # answer-1712320) –