ASP.Net Türkçe Dil Sorunu, Bazen localhost’a site hazırlarken sorun olmamasına rağmen sitenizi upload ettiğinizde türkçe karakter problemi ile karşılaşabilirsiniz veya aynı durum ile localhost’ada karşılaşabilirsiniz bu gibi durumlarda makalemizdeki yöntemleri deneyebilirsiniz.
ASP.NET Türkçe Dil Sorunu ve Çözümü
Bazen web projesi hazırlarken sorun olmamasına rağmen sitenizi yayınlanacağı sunucuya deploy ettiğinizde Türkçe karakter problemi ile karşılaşabiliyorsunuz bu gibi durumda alttaki çözüm yollarını deneyebilirsiniz en kesin çözüm web.config ile yapılan çözümdür ama farklı işlemler sonucunda oluşan Türkçe karakter sorunu çözümüne HTML tarafında basit bir şekilde çözüme ulaşmak için şu kodu da deneyebilirsiniz.
Html meta etiketi ile türkçe karakter sorununu çözme
1 | <meta charset="utf-8" /> |
Web.Config dosyası ile türkçe karakter sorununu çözme
Web config dosyanızdaki ‘system.web’ etiketleri, arasına alttaki globalization etiketini ekleyin
1 | <globalization requestEncoding="iso-8859-9" responseEncoding="iso-8859-9" culture="tr-TR" uiCulture="tr-TR" fileEncoding="iso-8859-9" /> |
Buna en olarak sayfanızın Page direktifine CodePage’i alttaki gibi eklemelisiniz
1 2 3 | <%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodePage="28599" CodeBehind="adminpage.aspx.cs" Inherits="MuratOner.admin.adminpage" %> |
Son olarak eğer IIS’e erişme imkanınız varsa alttaki gibi globalization ayarlarını yaparak Türkçe karakter sorununu aşmayı deneyebilirsiniz.
✍ Lütfen olumlu-olumsuz tüm görüşlerinizi bana yorum yada mail yolu ile iletmeyi ihmal etmeyin.
🔗 Sosyal medya kanallarından makaleyi paylaşarak destek olursanız çok sevinirim.
👋 Bir sonraki makalede görüşmek dileğiyle.
çok teşekkürler işe yaradı başarılarınızın devamını diliyorum…
Teşekkür ederim.
Teşekkürler
normal türkiyedeki hosting sistemlerinde türkçe karakter problemim yoktu godaddy hosting aldım ve burada türkçe karakter problemim sadece i hafleri y olarak görünüyordu html taraflı ne kadar kod varsa denedim çözüm alamadım sizin yukarıda ki belirtmiş olduğunuz web config dosyasını ekledimm ve problem çözüldü paylaşımınız için teşekkürler
Rica ederim önemli olan sorunun çözülmüş olması. Geri dönüşünüz için ben teşekkür ederim.
Selamlar. Benim sorunum bu konuyla mı alakalı bilmiyorum ama…
Vs2015 kullanıyorum. Calendar kontrolünde ki selectedDate.DayOfWeek bana ingilizce gün ismi veriyor.
Web.config olsun sayfa başı page tagları olsun iis globalization ayarları olsun tüm ayarları yaptım ama olmadı. Öneriniz var mı sorunu çözebilmem için arkadaşlar.
Kontrollerin varsayılan dili ingilizcedir türkçeye çevirmek için şu kodu global.asax dosyasına application start metoduna eklemelisiniz.
Thread.CurrentThread.CurrentCulture = new CultureInfo(“tr-TR”);
WebUtility.HtmlDecode() ile ilgili eksik bir bilgi vermişim, alt yorumda kaybolur ve akradaşların gözünden kaçar diye yeni bir mesaj olarak yazıyorum.
WebUtility.HtmlDecode() ile çevrilerek kaydedilen alanın veri tipi TEXT olmak zorundadır!
Yukarıdaki çözümlerin yeterli olmadığı durumda veriyi kayıt etmeden önce
WebUtility.HtmlDecode()
metodu ile convert ederek denemenizi tavsiye ederim.
Sadece bilgiyi kullanmayıp @Volkan Durahim gibi bilginizi paylaştığınız için teşekkür ederim umarım birçok arkadaşın sorununa çözüm olur.
Rica ederiz.
Bilgi paylaşıldıkça artar…
Bu iki meta ‘yi ekledigimde web sayfasinda tum turkce karakter sorunu cozuluyor.web config de ya da globalization da degisiklik yapmaya gerekte kalmadan.
Eger veriler access database den geliyor ise durum farkli ,ozaman sayfaya ;
metasini ekliyorum ve database baglanti sayfasina da ;
Session.LCID = 1055
Session.CodePage = 1254
Response.Codepage = 65001
kodlarini ekliyorum gerekli sayfaya ,sorunsuz turkce karakterleri okuyor yada database e giriyor.
Bu ve bunun gibi paylasimlari okuyarak, tum karakter sorunlarimi cozdum.Tum paylasimlar icin tesekkurler. Bu da benden bir extra bilgi belki birine bir faydasi olur. Herkese kolay gelsin.
Bizimle bu bilgiyi paylaştığınız için teşekkür ederim birçok arkadaş bu yazdığınız durumdan faydalanacaktır.