2013-11-21 9 views
5

Durante il rendering di una vista, si verifica un problema con la codifica, ovvero i caratteri unicode vengono visualizzati in modo errato.Come forzare ASP.NET MVC a leggere i file .cshtml come UTF-8?

Secondo an answer to an unrelated question:

Se si verificano problemi con la codifica l'uscita, provare a salvare i file aspx vostra vista come 'Unicode UTF-8 con la firma'.

In effetti, mio ​​punto di vista sono stati salvati come UTF-8 senza la firma; salvandoli come UTF-8 con la firma risolve il problema.

C'è un modo per specificare su ASP.NET MVC che dovrebbe utilizzare UTF-8 ogni volta, per poter utilizzare UTF-8 senza firma per le viste appena memorizzate?

risposta

13

Prova:

<system.web> 
    <globalization fileEncoding="utf-8" /> 
</system.web> 

Non dimenticate di salvare il file sorgente in UTF-8 come bene.

1

Credo che la codifica non sia responsabilità di MVC, piuttosto di IIS. Hai questa linea nel tuo web.config?

<globalization requestEncoding="utf-8" responseEncoding="utf-8" /> 
+1

Il problema si verifica prima di IIS, poiché la codifica è già errata nella stringa HTML generata dalla vista. –

Problemi correlati