Documentation Home
MySQL Connector/NET Release Notes
Related Documentation Download these Release Notes
PDF (US Ltr) - 0.8Mb
PDF (A4) - 0.8Mb

MySQL Connector/NET Release Notes  /  Changes in MySQL Connector/NET Version 8.x  /  Changes in MySQL Connector/NET 8.3.0 (2024-01-16, General Availability)

Changes in MySQL Connector/NET 8.3.0 (2024-01-16, General Availability)

Deprecation and Removal Notes

  • Calling the MySqlDataReader.GetString() method now throws an InvalidCastException exception if the associated column is not a string type.

    The OldGetStringBehavior connection option was added to allow (by setting it to true) restoring previous behavior by logging a deprecation warning instead of throwing the exception. This option defaults to false.

    This option will be removed in the near future, potentially in version 9.0.0. (WL #15972)

Functionality Added or Changed

  • Previously, each Entity Framework Core (EF Core) NuGet package supported a single .NET target. For instance, the connector’s EF Core 8 package was able to target .NET 8.0 only. Now, the package-target support relationships are:

    • EF Core 6 targets .NET 6

    • EF Core 7 targets .NET 6, .NET 7

    • EF Core 8 targets .NET 6, .NET 7, .NET 8

    (Bug #35968775)

  • Upgraded the Google.Protobuf dependency to version 3.25.1. (WL #16075)

  • Previously, Connector/NET 8.2.0 supported .NET 8 and Entity Framework Core 8.0 (EF8) preview releases only. Connector/NET now supports all .NET 8 and EF8 releases. (WL #16035)

  • Added Microsoft.Build.Traversal support; executing MSBUILD dirs.proj in the Connector/NET root folder now builds all projects in the repository (MySQL.Data, MySQL.Data.OpenTelemetry, MySQL.Web, EntityFramework, and EFCore) as defined in dirs.proj. (WL #15798)

Bugs Fixed

  • Added an AssemblyInfo file for MySQL.Data.OpenTelemtry. (Bug #35957212)

  • After an application called Dispose() on a connection object, it was possible to reopen the connection. Now, the connector returns an exception if an attempt is made to reopen a disposed connection. (Bug #35827809)

  • The timeout period of a transaction could elapsed prior to obtaining a connection from the connection pool. This might occur because all pooled connections were neither discarded from nor returned to the pool, but remained marked as InUse. The fix resolves an issue that prevented the removal of a connection from the connection pool after an exception was thrown. (Bug #112123, Bug #35731216)