Connector/NET 现在支持用户帐户密码的 SHA-256 散列。按照SHA-256 可插入身份验证中概述的步骤创建帐户后 ,只需打开一个传递用户和密码的连接器/NET 连接。此功能适用于 SSL 和非 SSL 安全连接。(漏洞 #15935128)
-
Connector/NET 现在支持 MySQL 5.6 功能,可以在服务器中存储特定于连接的数据。连接器/NET 应用程序可以在登录时向服务器提供键/值对列表。当您指定连接选项
Connect_Attrs
时,一组预定义的属性值将发送到服务器。Connector/NET 自动传输以下属性:_client_version
_os
_pid
_platform
_program_name
_thread
Connector/NET 现在支持 MySQL 5.6 密码过期协议。有关
ALTER USER
使用户密码过期的语法,请参见。当您通过以密码过期的用户身份登录的连接器/NET 打开连接时,通过该连接发出的任何语句都会产生SET PASSWORD
异常。当您在 Visual Studio Server Explorer 中创建与密码已过期的用户的连接时,会出现一个对话框提示输入新密码,之后连接成功。(漏洞 #15935104)-
使用 Entity Framework Code First定义具有
DatabaseGeneratedOption.Identity
值的实体时,您现在可以将此列从INSERT
orUPDATE
语句的列列表中删除。此功能对于定义具有与返回值对应的默认值的列特别有用CURRENT_TIMESTAMP()
:[DatabaseGenerated(DatabaseGeneratedOption.Identity)] public DateTime DateCreated { get; set; }
(漏洞 #15935094)
Geometry
MySQL Server 5.1 及更高版本现在支持 该类型。
新的几何列与类不兼容
DbGeometry
。(漏洞#16446399)设置
cascadeDelete
为true
inDbMigration.AddForeignKey()
会 在生成的DDL中产生ON DELETE RESTRICT
外键约束,而不是 像预期的那样。(错误#16398432,错误#68457)ON DELETE CASCADE
-
运行多线程服务时,您可能会收到异常:
The given key was not present in the dictionary
通过增强类中的锁定代码解决了这个问题
ConnectionStringBuilder
。(漏洞 #16310698,漏洞 #68217) 使用 EntityFramework 4.3 和 Code First 时,生成的 外键标识符可能超过 64 个字符,从而导致
MySQLException
错误。该修复使用名称格式重命名任何太长的标识符 ,其中 是在运行时生成的全局唯一标识符。(漏洞 #16286397,漏洞 #67285)FK_
guid
guid
MySqlException
当将无效集合传递给GetSchema
方法时, Connector/NET 会抛出异常。现在它会ArgumentException
在将无效的集合名称传递给 时抛出GetSchema
,以符合 的 API 规范System.Data.Common.DbConnection.GetSchema
。新行为提供了与其他数据访问提供程序(如 ADO.NET)更好的兼容性。(漏洞 #16271425,漏洞 #67901)如果
DateTime
MySQL 5.6 中的类型是使用 Entity Framework Code First 或 EF Model First 以毫秒精度定义的,则预期 列不包括精度规范。(漏洞 #15972773)DateTime(
n
)调用方法
FirstOrDefault
“ LINQ to Entities ”查询导致System.Data.EntityCommandCompilationException
异常。(错误#15856964,错误#67377)-
在 Visual Studio 2012 中使用 Entity Frameworks: Code First 并使用 GUID 作为类中的主键时,可能会出现以下错误:
Incorrect column specifier for column 'column_name'.
Connector/NET 将
AUTO_INCREMENT
属性应用于列,这要求列使用整数数据类型。(缺陷 #15834176,缺陷 #67450) 在 Connector/NET 中使用 IPV6 地址的连接尝试将失败。(缺陷 #14835718,缺陷 #67253)
在与 MySQL Entity Framework 提供程序一起使用的连接字符串中指定
Default Command Timeout
选项无效。命令超时始终为 30 秒。(漏洞 #14825670,漏洞 #67171)-
Visual Studio 2012 项目有时会出现以下错误对话框:
Failed to merge object(s). Keyword not supported. Parameter name: AttachDbFilename.
此问题主要影响 VisualStudio 2012 项目,从 VisualStudio 2010 迁移或包括使用 VS2010 创建的网站,连接到 MySQL 5.5 服务器。(漏洞 #14733472,漏洞 #66880)
System.InvalidCastException
调用存储函数时可能会发生异常 。解决方法是指定CheckParameters=false
连接选项。(错误#13864627,错误#64633)如果不在解析器中引用,某些关键字将无法用作 ID。
尝试使用旧密码进行身份验证时的错误消息已得到改进。