返回
.NET Core MVC页面输出中文被编码了
2023-04-25
1715 0如果在使用 .NET Core MVC 时发现页面上的中文字符被编码了,可能是由于的网页编码与的实际编码不匹配所致。
可以尝试以下解决方法:
在Program.cs文件中注册HtmlEncoder.Create服务:
using System.Text.Encodings.Web;
using System.Text.Unicode;
builder.Services.AddSingleton(HtmlEncoder.Create(UnicodeRanges.All));
推荐这个方法,如果不能解决再往下看。
在的 Layout.cshtml 文件中,确保设置了正确的 charset 编码,例如:
<meta charset="utf-8" />
确保的视图文件以 UTF-8 编码保存,可以在 Visual Studio 的文件菜单中选择“高级保存选项”来设置编码。
如果使用的是 Visual Studio Code,则可以在右下角找到编码设置,并将其设置为 UTF-8。
如果以上方法仍未解决问题,则可以尝试在视图文件中使用 Html.Raw() 方法来输出的中文字符,例如:
<p>@Html.Raw("你好世界")</p>
这可能有安全问题,可能输出的内容包含脚本会被执行。
希望这些解决方法能帮助解决问题。
网友点评
提交
相关阅读
.NET Core HttpClient报错The character set provided in ContentType is invalid. Cannot read content as string using an invalid character set.
.NET Core 3.0创建一个单独的可执行文件
ASP.NET Core 8 MVC在program.cs里设置允许跨域
_ViewStart.cshtml文件的作用
.NET Core判断发起请求的设备
使用try-convert工具把.NET Framework项目迁移到.NET Core
EF Core在非MVC项目中需要手动释放吗?
.NET Core记录请求处理时间的中间件