Bir örnek görelim HTML kaynağında garip kodlama formatında Fußgängerübergänge
C# ASP.NET MVC kaynak dosyanın dize
Ben Ne:
web.config
dosyası:... <system.web> <globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" culture="auto" uiCulture="auto" /> ...
bu kelimeyi içeren bir kaynak dosyası:
Ben göründükleri web sayfasının kaynak kodunda bunları kontrol ettiğinizde... <head> <meta charset="utf-8"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> ... </head> <body> <div>Fußgängerübergänge</div> <div>@Model.SameWordFromDbTable.TestWord</div> <div>@Resources.MyResource.TestWord</div> <div>@MvcHtmlString.Create(Resources.MyResource.TestWord)</div> </body> ...
:
<?xml version="1.0" encoding="utf-8"?> <root> ... <data name="TestWord" xml:space="preserve"> <value>Fußgängerübergänge</value> </data> ... </root>
bir html sayfası 0 aynı kelimeyi ve bu kelimeyi başvurmak için bu kaynağı kullanarak ve aynı zamanda DB'den bu kelimeyi alınırken kodlanmış iki farklı yolu:
... <head> <meta charset="utf-8"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> ... </head> <body> <div>Fußgängerübergänge</div> <div>Fußgängerübergänge</div> <div>Fußgängerübergänge</div> <div>Fußgängerübergänge</div> </body> ...
Soru: yanlış ne yaptın, ben nasıl çözebileceğinizi bu "kodlama" iss ue? Son 2 kelimeyi kaynak kodunda ilk iki kelimeyle aynı görünmesini istiyorsanız ne yapmalıyım?
@ Html.Raw işe yaramadı :(hala aynı davranış ... – Bundy
Ah, Tamam. Bu, TestWord'unuzun zaten kaynaklarınızdan çıkarıldığında HTML kodlanmış olduğunu ima ediyor - Birkaç şey denedim ve cevabı düzenleyin.Bu arada, karışık görünen ile çözebilir: Html.Raw (HttpUtility.HtmlDecode (Resources.MyResource.TestWord)) – Alan
Hala aynı, db veya hardcoded gelen her ne olursa olsun "saf" -texts ne olursa olsun Kaynaktan geliyor garip ... Her kim web sitesini kontrol eder, onun "görünümü" tamam, ama kaynak kodu yarı normal yarı kodlanmış ... izleyiciler için can sıkıcı olmayabilir, ama Bu sorunun neden benim için sinir bozucu olduğunu bilmiyorum :) – Bundy