我正在使用WebMatrix C#(Razor)开发网页。我有一个包含布局和所有内容的_SiteLayout.cshtml,一个带有起始页面内容的index.cshtml和一组带有附加信息的.cshtml文件。这些文件使用RenderPage(“x.cshtml”)呈现到index.cshtml文件中。
现在这些文件包含,因为我来自瑞士,“Umlaute”像ö,ä,ü。在index.cshtml文件中编写Umlaute没有问题,但子文件中的文件未正确呈现。它们显示为Ã(ü)。使用html变音符号(ü)重写子文件将是一项巨大的努力,它们很大并且经常被人类改变,不愿意转换每个变音符号。
我认为html语言设置存在问题,但我不确定。在_SiteLayout.cshtml中我指定了<html lang="de">
,但不知何故它不适用于子文件。
非常感谢您的帮助
答案 0 :(得分:1)
Grüezi! 我不熟悉Razor,但它似乎是一个编码问题。我更喜欢使用Unicode,因为它涵盖了从Schwitzerdütsch到Suaheli的所有语言。 Here,我发现了这一行:
<meta charset="utf-8" />
也许有帮助。
答案 1 :(得分:1)
我解决了这个问题。将语言规范添加到web.config文件很有帮助。我将以下内容添加到system.web部分:
<globalization requestEncoding="utf-8" responseEncoding="utf-8" fileEncoding="utf-8" culture="de" uiCulture="de"/>
感谢Peter Stock带领我朝着正确的方向前进。