MySQL 连接器/NET 发行说明  / MySQL Connector/Net 6.6 中的变化  /  MySQL Connector/NET 6.6.4 的变化(2012-10-19,发布候选)

MySQL Connector/NET 6.6.4 的变化(2012-10-19,发布候选)

对 6.6 功能集的持续改进和修复。特别是,对部分信任支持的增强允许托管服务部署应用程序,而无需在 GAC 中安装连接器/网络库。这是 6.6 系列的第一个候选版本。

添加或更改的功能

  • 使用 MySQLClientPermissions该类的中等信任支持现在更加灵活:除了将库安装在全局程序集缓存 (GAC) 中的原始部署方法之外,您还可以将库安装在项目或解决方案内的一个bin或 文件夹中。lib当库部署在 GAC 以外的地方时,唯一支持的协议是 TCP/IP。使用安装在 GAC 中的库的现有应用程序现在必须包含一个额外的连接选项, includesecurityasserts=true. 有关详细信息,请参阅 使用部分信任/中等信任。(漏洞 #14668820,漏洞 #65036)

修正错误

  • 自 Connector/NET 6.5 以来,TIMESTAMP值已作为DateTime具有 kind 属性Local而不是 Unspecified. MySqlDataReader.GetDateTime()应该返回一个日期,其中包含UTC 连接time_zone属性为 utc. 有了这个修复,如果 time_zoneUTCKind也是UTC;否则,KindLocal

    要使用具有不同时区的多个服务器,请将所有对象time_zone中的设置更改为 UTC 。MySqlConnection例如,如果您发出命令:

    set @@GLOBAL.time_zone = '+0:00',

    那么您打开的每个新连接,或者如果您关闭并重新打开的当前连接,都将使用新的客户端时区。使用此修复程序,您将不必更改 system_time_zone任何服务器。Connector/NET 通过运行如下查询来检查客户端时区是否与 UTC 不同:

    select timediff( curtime(), utc_time() )

    其中零小时的返回值表示 UTC 用于 time_zone.

    借助Kind = UTC,您可以在需要时使用 .NET 标准 API 在前端应用程序的时区之间进行转换。(缺陷 #14740705,缺陷 #66964)

  • 当应用程序启动、创建连接,然后在执行一次数据库操作后进入空闲状态时,现在可以更快地清理连接:通常是在 3 分钟而不是 6 分钟的空闲时间之后。这种优化对于低流量站点上的 ASP.net 应用程序特别有用。(缺陷 #14652624,缺陷 #66472)