Çoklu dil özellikli bir sitem var. Ben hala dili bulmak için tanımlama bilgisi kullanıyorum, örneğin kullanıcı “English” seçtiyse, çerez değerini “EN” olarak değiştireceğim ve kullanıcıya “ingilizce sayfa” sunacağım.MVC'de çoklu dil desteği
Bu davranışı değiştirmek ve dili çerez yerine URL'den okumak istiyorum. Örneğin ürün sayfası için geçerli url
www.ezstore.com/product/asus-gtx970
Yani eğer ben RouteConfig
değişen düşünüyordum
www.ezstore.com/en/product/asus-gtx970 for english
www.ezstore.com/fr/product/asus-gtx970 for french
url değiştirmek ve dil değeri elde etmek URL'yi okumak istiyorum. Mümkün mü?
Benim şimdiki RouteConfig
geçerli:
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
});
Ben tarayıcı tarafından gönderilen HTTP_ACCEPT_LANGUAGE başlığının kullanılmasını ele alacak. Bu kullanıcının tercih ettiği dil. –
Bakın [bu] (http://www.wiliam.com.au/wiliam-blog/web-design-sydney-using-mvc-routing-for-seo-friendly-urls-on-multilingual-sites) makalesi . –
Bence ihtiyacın olan cevap budur [http://stackoverflow.com/questions/1712167/asp-net-mvc-localization-route#answer-1712320](http://stackoverflow.com/questions/1712167/asp -net-mvc-yerelleştirme-rota # answer-1712320) –