当前位置:  开发笔记 > 编程语言 > 正文

代码首先在西里尔语中播种数据

如何解决《代码首先在西里尔语中播种数据》经验,为你挑选了1个好方法。

我正在使用种子方法来填充数据库.一些对象具有西里尔字母的属性.例:

context.Wines.AddOrUpdate(new Wine()
       {
           Id = 1,
           Name = "???????",
           etc........................................

这些对象在数据库中正确创建,但是当我在MS SQL管理工作室中检查数据库而不是葡萄酒的名称为"Шардоне"时,它显示为"Øàðäîíå".

奇怪的是,当我在我的Startup类中创建葡萄酒时,如下所示:

var db = new WineSystemDbContext();
var ShardoneWine = new Wine { Name = "???????};
db.Wines.Add(ShardoneWine);

一切都在数据库中以西里尔文显示.

你知道可能导致这种情况的原因吗?



1> Vadim Martyn..:

您可以在连接字符串中指定connectin的字符集.只需将此部分添加到您的连接:

charset=UTF8;

如果没有结果,您可以尝试更改Configuration.cs文件的char-set.有两种方法可以做到这一点.

    在Visual Studio编辑器中关闭Configuration.cs,然后在解决方案资源管理器中右键单击该文件并选择"打开方式..." - >"带编码的CSharp编辑器",并从列表中选择"Unicode(带签名的UTF-8) - 代码页65001"选项(如果这个代码页会显示一些'中文'符号,请尝试其他代码页).现在修复您的cyrilic章节并保存Configuration.cs文件.

    选择"文件" - >"高级保存选项",然后使用以UTF-8编码方式播种数据的方法保存文件.

如果使用ntext列类型,也可能会出现问题.

推荐阅读
手机用户2402851155
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有