2012-07-17 150 views
4

»角色似乎在剃刀視圖中呈現爲»。我曾嘗試剃刀視圖»字符呈現爲»

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

@Html.Raw() 

但問題不會消失。我沒有ASPX視圖的這個問題。

另外,作爲

<globalization uiCulture="en" culture="en-US" /> 
+0

檢查您的瀏覽器認爲它是在UTF-8,而且.cshtml文件是UTF-8保存在簽名(編碼文件/高級保存選項...)。 – Codo 2012-07-17 05:46:49

+0

Yup firefox pageinfo說utf-8編碼。但用UTF-8簽名解決了問題。最初保存爲無簽名的UTF-8。謝謝。順便說一句,你如何檢查瀏覽器是否認爲它是UTF-8? – sean 2012-07-17 06:05:09

+0

在Firefox中,它是頁面信息。在IE中,頁面上的上下文菜單具有編碼子菜單。 – Codo 2012-07-17 07:27:20

回答

8

我懷疑你.cshtml視圖/包含該字符的部分不保存與UTF-8編碼的簽名培養被設置。對_Layout也進行相同的驗證。在VS使用Save As with encoding dialog

enter image description here

還要確保你已經把»字符作爲,是在你的看法。不是來自字符串,XML或數據庫。如果它來自其他地方,請確保它在閱讀時不被破壞。如果是這種情況,請顯示檢索您嘗試在視圖中輸出的字符串的代碼。

你的meta標籤最後一句話:如果你使用的是HTML5應用:

<meta charset="utf-8" /> 
+0

你知道爲什麼這個問題在ASPX視圖中不存在嗎? – sean 2012-07-17 06:17:09

+0

這個問題在Razor中都不存在。有人必須搞砸你的文件的編碼。外部文本編輯器或其他東西,只是簡單地改變了編碼。 – 2012-07-17 06:17:53

+2

是的,你是對的。在使用工具將其轉換爲MVC3之前,只檢查了該文件的舊版本,並使用帶有BOM的UTF-8。 – sean 2012-07-17 06:20:59