dotConnect for MySQL is a high-performance ORM enabled data provider for MySQL 8.0+ including Embedded servers (starting with 4.1), MariaDB, Amazon RDS, Amazon Aurora, Azure MySQL, Percona that builds on ADO.NET technology. The provider works with .NET Frameworks 2.0+, .NET Core 2.0+, .NET 5+. It supports a wide range of MySQL-specific features, such as secure SSL and SSH connections, compression protocol, HTTP tunneling and others. Package provides advanced Visual Studio integration and convenient visual component editors to simplify component tweaking. More information at https://www.devart.com/dotconnect/mysql/ License dotConnect for MySQL is available in several editions https://www.devart.com/dotconnect/mysql/ordering.html The NuGet package initiates the retrieval of an activation key from the Devart website. This key is required to activate the product for a free trial. Key Features * Direct Mode: Allows your application to work with MySQL directly, without involving MySQL client library. * ASP.NET Core: Supports ASP.NET Core Identity. * Performance: Uses many MySQL-specific performance features & optimizations to ensure the highest performance. * Monitoring: Allows per-component tracing of database events with a free dbMonitor application. * Security: Supports various encryption ciphers, SSL and SSH connections, etc. * Support and updates: Enjoy dedicated support team for prompt issue resolution and regular updates to keep your software running smoothly and securely.
$ dotnet add package Devart.Data.MySql.EFCoredotConnect for MySQL is a high-performance ORM enabled data provider for MySQL 8.0+ including Embedded servers (starting with 4.1), MariaDB, Amazon RDS, Amazon Aurora, Azure MySQL, Percona that builds on ADO.NET technology.
The provider works with .NET Frameworks 2.0+, .NET Core 2.0+, .NET 5+. The product is compatible with ADO.NET Entity Framework and Entity Framework (EF) Core.
It supports a wide range of MySQL-specific features, such as secure SSL and SSH connections, compression protocol, HTTP tunneling and others.
It also includes visual ORM designer for Entity Framework, Entity Framework Core, and LinqConnect ORM models.
More information at dotConnect for MySQL.
For projects, using Entity Framework Core 10 with MySQL, install this package. Execute the following command in the Package Manager Console:
Install-Package Devart.Data.MySql.EFCore
For projects that require integration with Entity Framework 6.4 (EF6), use the Devart.Data.MySql.EF6 package.
There also are Visual Studio extensions for earlier Visual Studio versions. If you use some other tool than Visual Studio, you can get NuGet packages with the nuget.exe console tool.
dotConnect for MySQL is available in several editions. See pricing options for ordering.
The NuGet package initiates the retrieval of an activation key from the Devart website. This key is required to activate the product for a free trial.
The following table show which version of this package to use with which version of frameworks.
| Frameworks | Version support |
|---|---|
| Entity Framework Core | 10 |
| .NET | 10 |
More information here
This snippet directly configures a MySQL database connection for an Entity Framework Core DbContext using a connection string.
public class MyDbContext : DbContext {
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) {
optionsBuilder.UseMySql(@"User Id=root;Password=mypassword;Host=127.0.0.1;Port=3306;");
}
}
Configuration Using MySqlConnection Instance
using Devart.Data.MySql;
...
public class MyDbContext : DbContext {
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) {
var connection = new MySqlConnection();
connection.Host = "127.0.0.1";
connection.Port = 3306;
connection.UserId = "root";
connection.Password = "mypassword";
optionsBuilder.UseMySql(connection);
}
}
Configuration File (appsettings.json):
{
"ConnectionStrings": {
"DefaultConnection": "Host=127.0.0.1;UserId=root;Password=mypassword;Port=3306;"
}
}
DbContext Configuration:
public class MyDbContext : DbContext {
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) {
IConfigurationBuilder builder = new ConfigurationBuilder().AddJsonFile("appsettings.json");
IConfiguration configuration = builder.Build();
optionsBuilder.UseMySql(configuration.GetConnectionString("DefaultConnection"));
}
}
For more information about secure connections using SSL or SSH connections read at out documentation.