我有一个VirtualPathProvider,它将我的数据库中的源代码作为普通字符串,并将其编码为UTF8.
例如:
public override Stream Open()
{
MemoryStream result = new MemoryStream();
result = new MemoryStream(Encoding.UTF8.GetBytes(_sourceCode));
return result;
}
Run Code Online (Sandbox Code Playgroud)
然后我有一个布局母版页,它的字符集为UTF 8
<meta charset="utf-8">
Run Code Online (Sandbox Code Playgroud)
然后,母版页调用@RenderBody()哪个获取我的VirtualPathProvider页面并将其输出到浏览器.
问题是它正在输出带有编码字符的页面:
wünschte成为wünschte
我究竟做错了什么?
TLDR:
我希望wünschte显示而不是wünschte.来自DB的纯字符串是wünschte,但是一旦它从内存流进入我的页面就变成了wünschte.