Wie kann ich Razor dazu bringen, UTF-8-Dateien ohne BOM zu lesen?

8

Wir haben Teams für Frontend- und Backend-Arbeiten getrennt. Das Frontend verwendet eine Vielzahl von Editoren, um die CSHTML zu bearbeiten, und die meisten von ihnen speichern UTF-8 ohne eine Byte-Reihenfolge. Das Problem ist, dass Razor erwartet, dass BOM vorhanden ist. Wenn es nicht vorhanden ist, wird es die Datei mit der aktuellen Codepage lesen und wir bekommen Probleme mit der Codierung.

Wie würde ich Razor dazu bringen, die UTF-8 Dateien ohne BOM zu akzeptieren? Offensichtlich wäre die einzige Lösung, ein eigenes VirtualPathProvider und damit auch ein VirtualFile zu implementieren. Leider ist der aktuell verwendete VirtualPathProvider MapPathBasedVirtualPathProvider , was eine interne Klasse ist. Also müsste ich eine Menge Funktionalität neu erstellen.

    
user3779544 26.06.2014, 13:33
quelle

1 Antwort

4

Nach How to zwingen Sie ASP.NET MVC, .cshtml-Dateien als UTF-8 zu lesen? , versuchen Sie, dies in Web.config hinzuzufügen:

%Vor%     
jkolo 29.08.2015 13:21
quelle