【问题标题】:Result of adding data by EntityFramework in Cyrillic is exclamation marks. SQL ServerCyrillic EntityFramework 添加数据的结果是感叹号。 SQL 服务器
【发布时间】:2015-05-23 23:37:38
【问题描述】:

我有一个网络应用程序,我只是通过用户输入添加一些数据。然而,当我在真实的网络服务器上测试时,我只看到感叹号而不是“Привет”。

using (DatabaseEntities context = new DatabaseEntities())
{
   name = "Человек";
   surname = "Привет";   
   Students student = new Students();
   apho.ID = ID;
   apho.Name = name;
   apho.Surname = surname;
   context.AddObject("Students", student);
   context.SaveChanges();                            
}

结果是名称:“?????????”而对于姓氏是:“??????”

任何帮助将不胜感激!

【问题讨论】:

标签: c# sql-server asp.net-mvc entity-framework cyrillic


【解决方案1】:

@mfanto 是对的。我使用了不正确的排序规则。正确的程序是:

alter table Students
alter column
Surname Nvarchar(255)  COLLATE Cyrillic_General_CI_AS_KS not null
go

所以我命令在SQL ServerEntity Framework 中查看俄语字母的操作是:

  1. 创建 Unicode 字段 (NVARCHAR)
  2. 更改排序规则(参见上面的代码(sql 查询))。也许没有必要,因为我已经创建了 Unicode 字段。
  3. 创建 new ADO.NET 实体数据模型,因为 SQL 表中的整理列成为实体框架中的类属性设置为Unicode - true(我通过单击图中的属性看到了这些属性)

就是这样!:)

【讨论】:

    猜你喜欢
    • 2018-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-26
    • 1970-01-01
    • 2011-12-22
    相关资源
    最近更新 更多