Yanıt 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:05
    Moderatör
     
     Yanıt Kod İçerir

    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
    MCC

  • 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