Sayfa dilini sayfa adresinde gösterme
-
25 Nisan 2012 Çarşamba 22:27
Merhaba arkadaşlar 2 sorum olucaktı size
1. Birincisi üzerinde çalıştığım projeye 3 farklı dil desteği eklemem gerekiyor MVC kullanmadan, tavsiye edebileceğiniz en mantıklı ve kullanışlı yol nedir? (Bakabileceğim güzel bir kaynak varsa paylaşırsanız sevinirim araştırdım baya ancak güzel bir kaynak bulamadım malesef)
2. İkincisi ve en önemlisi sayfada seçilen dili sayfa adresine nasıl ekleyebilirim örneğin: http:www.xx.com/Default.aspx/tr-tr
Kullanıcı adresteki tr-tr'yi silip en-Us yazdığında sayfa dilininde değişmesi gerekiyor. Çünkü Linkleri paylaştığımız zaman hangi sayfa hangi dilde ise link kullanıcıya o dilde gitmeli ve linki kullandığında o dilde açılmalı sayfa
Şimdiden teşekürler
Tüm Yanıtlar
-
27 Nisan 2012 Cuma 08:05Moderatör
Selamlar,
Öncelikle bakış açınızın yanlış olduğunu düşünüyorum, Mevcut dili url de göstermek yerine , url deki veriye göre dil göstermek olmalı.
Aslında asp.net için işler bu şekilde yürümüyor. ASP.net statik içerik için Localization konusunu incelemelisiniz.
http://msdn.microsoft.com/en-us/library/fw69ke6f(v=vs.80).aspx
Sayfadaki kontrollerin statik içerikleri App_LocalResources içinde
Default.resx
Default.en-US.resx
Default.ru-RU.resxşeklinde resource dosyaları oluşturup;
<asp:Label runat=server Text='<%$ Resource:Default, welcomeText %>' />
şeklinde kullandığınızda otomatik olarak ilgili dile ait text geliyor.
Browser requestHeader inde işletim sistemine ait bilgiler bulunur, bunlardan biride Dil dir. Kullanıcının işletim sisteminin diline göre asp.net otomatik olarka resx dosyalarını seçer bunun için web.config içinde;
<globalization uiCulture="Auto" culture="Auto" />
olması yeterlidir.
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com


- Yanıt Olarak İşaretleyen software_development 27 Nisan 2012 Cuma 10:30
-
27 Nisan 2012 Cuma 10:29
Merhabalar öncelikle ilginiz için teşekkür ederim hocam
Evet haklısınız dediğiniz şekilde url'deki veriye göre dil değiştirmek lazım, Ancak kullanıcının dropdown'dan seçtiği dilin kodunuda url'ye eklememiz gerekir ki daha sonra bu url kullanıldığında oradaki dil koduna göre ilgili dil'e çevirilmesi gerek. Bunun için URL Rewriting diye bir olay ile dropdowndan seçilen dilin kodunu url'ye ekliyor ve url'deki o veriye göre dil değiştirebiliyorum. Dil olayını ise dediğiniz şekilde yaptım. Teşekkürler