The .NET Core 2.0 implementation now supports the following connection-string options:
UseUsageAdvisor. (Bug #27297337)
Document Store: In the process of refining the definition of the
MySqlXnamespace to cover the most relevant usage scenarios, the following API components have been removed from the implementation for MySQL Connector/NET:
API components that support session configurations
The MySqlX.XDevAPI.Confignamespace and all members of the namespace.
API components that support views
ModifyView()methods from the
ViewCheckOptionEnumenumerations from the
Table.IsViewproperty remains available for query operations.
(WL #11306, WL #11362)
Support for .NET Core 2.0 and .NET Standard 2.0 has been added (.NET Core 1.1 support continues). With .NET Core 2.0, most of the common ADO.NET classes are available for use, such as:
Support for Entity Framework Core 2.0 has been added (Entity Framework 1.1 support continues). Currently, the MySQL Connector/NET implementation excludes the following 2.0 features:
Modeling: table splitting, owned types, model-level query filters, database scalar function mapping, self-contained type configuration for code first.
High performance: DbContext pooling and explicitly compiled queries.
Change tracking: attach can track a graph of new and existing entities.
Query: improved LINQ translation, group-join improvements, string interpolation in
Database management: pluralization hook for DbContext scaffolding.
Others: only one provider per model, consolidated logging and diagnostics.
Document Store: MySQL Connector/NET now supports setting and releasing named transaction savepoints, which can be assigned a name explicitly or by default using the
savepoint_(format. In addition, a transaction can be rolled back to a named savepoint.
New methods were added to the
MySqlX.XDevAPI.BaseSessionclass to implement corresponding SQL statements using the X Protocol:
All errors generated by MySQL when one of the new methods is called will be returned by MySQL Connector/NET. (WL #11135)
Document Store: The
MySqlX.XDevAPI.CRUD.ModifyStatement.Patchmethod was added to enable the inclusion of JSON-like objects within
Collection.Modify()operations that describe the changes to apply to all documents matching the condition. (WL #11133)
Support for the
caching_sha2_passwordauthentication plugin through the classic MySQL protocol was added. Support through the X Protocol is limited to secure connections only (
sslmode=required). Caching SHA-2 pluggable authentication offers faster authentication than basic SHA-256 authentication.
A new and related connection option,
AllowPublicKeyRetrieval, was also added. (WL #11081)
Document Store: The
MySqlX.XDevAPI.Collection.CreateIndexmethod implementation was modified to enable the inclusion of a JSON document that defines the index to be created. Index-definition details can include the fields affected, data types, and so on. (WL #11131)
Document Store: When the
PLAINauthentication option was used to make a secure connection, the database name was excluded from the authenticating data and the database value was not set.
PLAINauthentication is the default option for connections made with TLS or Unix Sockets. (Bug #27098974, Bug #88427)
Boolean values within a JSON document were improperly stored as strings. (Bug #26837112)
MySql.Web.Security.MySqlWebSecurity.CreateUserAndAccountmethod with valid arguments, including
additionalUserAttributesas an object with key/value pairs, returned an out-of-range exception. Thanks to Stein Setvik for contributing to the fix. (Bug #25046364)
When a valid document was passed to the
SetValuemethod as a
DbDocobject, the content within the document was removed. (Bug #24397888)
The default character set and encoding were not set properly when making a connection to MySQL 5.6 and 5.7 servers configured to use the
utf8character set. (Bug #23257011)
After an index was created in MySQL 5.7.12 or higher, an exception prevented the inclusion of additional objects. (Bug #23016623)
SSL connections made to a single MySQL instance could not be disconnected and created repeatedly without restarting the client application to clear the half-open sockets. (Bug #20393654, Bug #75022)