ASP.NET MVC’ de kod tarafından (server side) gelen verilerimiz de (Model, ViewBag vb.) bulunan Türkçe karakterler sayfanın kaynak koduna baktığımızda bozuk şekilde gözüküyor. Karakterlerin bozuk gözükmesi SEO (Arama Motoru Optimizasyonu) açısından yüksek derece kötü bir durum.
Genel bir çözüm bulamadım ancak MSDN ve ASP.net forumları üzerinde yazılanlara göre tek çözüm gelen tüm verileri tek tek Html.Raw() methodu kullanarak ekrana yazdırmak. Bu şekilde yazdırdığımda ve kaynak kodlarına baktığımda aşağıdaki gibi düzgün bir şekilde görünüyor.
Aynı işlemi sitenin head tagleri arasında bulunan Title, Keywords ve Description alanları içinde yapmanız gerekiyor.
Eğer farklı bir şekilde, tek bir yerden tüm sitede düzeltmenin yönetimini bilen varsa yorum yazarsa çok mutlu olurum :) Sitedeki tüm verilere tek tek Html.Raw() girmek zor gelse de şu an için başka bir çözüm bulunmuyor maalesef.
5 yorum
Çok Teşekkür ederim.
Merhaba;
aşağıdaki linkte yer alan template üzerinde çalışıyorum
http://www.free-css.com/free-css-templates/page169/talium
visual studio 2008 de asp.net de çalışıyorum.
Her neyi denedim ise Talium yazan yerde, menu bar da ve diğer başlıklarda büyük i harfi (İ) ve (ş) harfi bir türlü çıkmıyor. Ancak gövde kısmında çıkıyor. Denemediğim yöntem kalmadı. Son olarak visual studio ya hiç dahil etmeden linkteki index.html dosyasını notepad de açıp talium u İ ve ş olarak değiştirdim yine de html olarak bile açmadı. Bu konuda yardımcı olabilirseniz sevinirim.
Merhaba,
Dediğiniz tasarım üzerinde fontları değiştirdim ancak sorunsuz şekilde Türkçe fontlar görünüyor.
Sadece bir alanda Türkçe font problemi yaşıyorsanız kullandığınız font ile ilgili olabilir, farklı bir font kullanmayı deneyebilirsiniz.
bu genelde kopyala yapıştır tarzı işlemlerde olmakta .. Notepad++ ile açıp ilgili sayfası menuden encoding kısmının altında yer alan Encode in UTF-8 BOM seçip kayıt edeceksiniz.. Peşinden ilgili sayfa siz visual studio tarafına döndüğünüüzde reload uyarısı verecek o kısma yes to all dediğinizde tekrar dan hata vericek hatayı okeylediğinizde göreceksiniz ki türkçe karakter olan yerler tekrardan farklı bir şekilde karakterize olmuş .. bozuk karakterleri türkçe karşılığı ile düzeltip kayıt edin işlem bu kadar ;)
Merhaba,
Sizinkiyle aynı sorun mu bilmiyorum, bizimkini ve çözümümüzü yazayım.
Bizde cshtml içindeki türkçe karakterleri türkçe gözteriyor ama modelde annotations ile verilen türkçe karakterleri, mesela HTML.LabelFor’da bozuk gösteriyordu.
cshtml dosyamızın encoding’i utf-8, model dosyamızınki ise ansi idi.
model dosyamızı notepad++ ile açıp convert to utf-8 yaptıktan ve kaydettikten sonra sorun kalmadı.
tabii html dosyamızın kullandığı layout dosyasında ve Web.config’ de de aşağıdaki satır var dı