Asp.net core中由于页面编码导致的中文乱码
问题描述
最近使用asp.net core写了一个简单的网站,在windows系统下完全没有出现问题。后来在linux系统中搭建了docker,并且在linux中自动使用git获取源码,编译,部署一条龙自动化。结果发现一个奇怪的现象:在控制器的代码中赋值中文给view model,页面显示正常。但如果是在view model中定义中文,页面中的中文会乱码。
原因
根据现象,第一时间想到的是,中文来源的编码出现问题。后来发现因为view model的cs文件都用了gb2312编码了。源码在linux那头被读取编译的时候,估计用的是utf8.
解决方法
由于vs2017中默认把设置页面文件编码的菜单隐藏了,因此需要到自定义菜单中设置才能在vs中修改文件编码。具体可以参考.
其他
其实一开始出现乱码的时候没有往这个方向思考,在网上找了一些关于net core乱码的资料,发现没有效果,然后才一步步测试出来问题所在。在这里记录一下。
Asp.net core中由于页面编码导致的中文乱码的更多相关文章
- Idea中使用Maven编码打包时中文乱码的解决办法
-Dfile.encoding=GBK
- ASP.NET Core 中的 Razor 页面介绍
标题:ASP.NET Core 中的 Razor 页面介绍 地址:https://docs.microsoft.com/zh-cn/aspnet/core/razor-pages/index?view ...
- ASP.NET Core中显示自定义错误页面-增强版
之前的博文 ASP.NET Core中显示自定义错误页面 中的方法是在项目中硬编码实现的,当有多个项目时,就会造成不同项目之间的重复代码,不可取. 在这篇博文中改用middleware实现,并且放在独 ...
- ASP.NET Core中显示自定义错误页面
在 ASP.NET Core 中,默认情况下当发生500或404错误时,只返回http状态码,不返回任何内容,页面一片空白. 如果在 Startup.cs 的 Configure() 中加上 app. ...
- [译]在Asp.Net Core 中使用外部登陆(google、微博...)
原文出自Rui Figueiredo的博文<External Login Providers in ASP.NET Core> 摘要:本文主要介绍了使用外部登陆提供程序登陆的流程,以及身份 ...
- 【译】在Asp.Net Core 中使用外部登陆(google、微博...)
原文出自Rui Figueiredo的博文<External Login Providers in ASP.NET Core> (本文很长) 摘要:本文主要介绍了使用外部登陆提供程序登陆的 ...
- 初探CSRF在ASP.NET Core中的处理方式
前言 前几天,有个朋友问我关于AntiForgeryToken问题,由于对这一块的理解也并不深入,所以就去研究了一番,梳理了一下. 在梳理之前,还需要简单了解一下背景知识. AntiForgeryTo ...
- ASP.NET Core中的OWASP Top 10 十大风险-跨站点脚本攻击 (XSS)
不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻喷,如觉得我翻译有问题请挪步原博客地址 本博文翻译自: https://dotnetcoretutorials.com/201 ...
- ASP.NET Core中使用GraphQL - 第六章 使用EF Core作为持久化仓储
ASP.NET Core中使用GraphQL ASP.NET Core中使用GraphQL - 第一章 Hello World ASP.NET Core中使用GraphQL - 第二章 中间件 ASP ...
随机推荐
- kafka消息机制
https://www.infoq.cn/article/kafka-analysis-part-1 https://www.infoq.cn/article/kafka-analysis-part- ...
- next()方法 执行下一个中间件 类似than
next()方法出现在express框架中的中间件部分,由于node异步的原因,我们需要提供一种机制,当当前中间件工作完成之后,通知下一个中间件执行,因此一个基本的中间件应该是这种形式 var mid ...
- [SQL Server] sysobjects的介紹
sysobjects表 數據庫中所創建的每個對象(約束.默認值.日誌.規則.存儲過程等)都各以一行資訊呈現於表中. 而臨時對象只有在tempdb內,才在該表中各佔一行. sysobjects 表結構: ...
- ajax高级操作
$('#ajax_submit').click(function () { $.ajax({ 'url':'/app_ajax', 'type':'post', 'data':$("#f1& ...
- Win7下,nginx默认80端口被System占用,造成nginx启动报错
在win7 32位旗舰版下,启动1.0.8版本nginx,显示如下错误: 2012/04/02 13:55:59 [emerg] 7864#2376: bind() to 0.0.0.0:80 fai ...
- Java Web开发Session超时设置
在Java Web开发中,Session为我们提供了很多方便,Session是由浏览器和服务器之间维护的.Session超时理解为:浏览器和服务器之间创建了一个Session,由于客户端长时间(休眠时 ...
- Windows下安装配置Flutter
Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面. Flutter可以与现有的代码一起工作.在全世界,Flutter正在被越来越多的开发者和组织使用,并且 ...
- C# Directory.Exists() 文件存在但返回一直为false
备注:这是一个低级错误,起始真正的原因不是访问权限的问题. 真正的原因是:这个程序要读取远程电脑上共享文件夹里的文件,但是没有远程访问代码,导致找不到相关的目录.所以才报错! 查询一个文件,但程序突然 ...
- iOS 12 tabbar 从二级页面返回时,出现跳动解决办法
APP push一个界面,返回的时候,tabBar上的图标和文字出现一个从上往下的神奇动画 经过测试发现,如果使用系统OS12.1 UINavigationController + UITabBarC ...
- windows环境下ElasticSearch6 安装head插件
转: https://blog.csdn.net/shubingzhuoxue/article/details/80998738 https://blog.csdn.net/camelcanoe/ar ...