【问题标题】:entity framework 4 unicode problem saving实体框架4 unicode问题保存
【发布时间】:2020-10-12 15:53:51
【问题描述】:

我在使用带有 MySQL 连接器 6.3.6 的 Entity Framework 4 时遇到问题。我已将 MySQL dabase 设置为 utf8 - 默认排序规则以在我的网站上使用 unicode。问题是当我尝试使用实体框架 4 保存 unicode 字符串时,我可以从数据库中将 unicode 读取到我的网站,它会在我的数据库上放置问号。我什至从 Visual Studio 设计器中设置了 Unicode 属性,但无济于事。我是否遗漏了什么,或者您必须做些什么才能使实体框架将 unicode 写入数据库?

【问题讨论】:

    标签: asp.net mysql asp.net-mvc entity-framework-4


    【解决方案1】:

    好的,经过大量研究后发现 MySQL 连接器 6.3.6 有一个连接字符串参数 'charset=utf8'。您需要将其添加到您的连接字符串中。

    【讨论】:

      【解决方案2】:

      在 Web.config 文件中使用 'charset=utf8' 创建连接字符串

      <connectionStrings>
      <add name="con" connectionString="server=localhost;Uid=root;password=;database=webpro;charset=utf8 "  />    
      </connectionStrings>
      

      【讨论】:

        【解决方案3】:

        在我的情况下,不知何故 unicode 配置在上下文中被禁用,这里的解决方案是为 .IsUnicode(true) 而不是 .IsUnicode(false) 设置 true 值

         modelBuilder.Entity<Center>()
                    .Property(e => e.CenterCode)
                    .IsUnicode(true);
        

        让我们享受这个技巧吧。

        【讨论】:

          猜你喜欢
          • 2013-07-17
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-08-24
          相关资源
          最近更新 更多