C# 方法'没有重载;使用MySQL';接受1个参数

C# 方法'没有重载;使用MySQL';接受1个参数,c#,asp.net,.net-core,.net-5,pomelo-entityframeworkcore-mysql,C#,Asp.net,.net Core,.net 5,Pomelo Entityframeworkcore Mysql,这是ı使用optionsbuilder.usemysql的dbcontext类,在将我的core升级到5.0和ıtake error之后,方法usemsql的无重载使用1个参数。如何解决这个问题 这里还有startup.class protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) {optionsBuilder.UseMySql(connectionString: @"se

这是ı使用optionsbuilder.usemysql的dbcontext类,在将我的core升级到5.0和ıtake error之后,方法usemsql的无重载使用1个参数。如何解决这个问题

这里还有startup.class

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {optionsBuilder.UseMySql(connectionString: @"server=localhost;userid=root;password=***;database=coursesystemdb");
    }

非常感谢

请查看我们网站上的示例代码:

公共类启动
{
public void配置服务(IServiceCollection服务)
{
//替换为您的连接字符串。
var connectionString=“server=localhost;user=root;password=1234;database=ef”;
//替换为您的服务器版本和类型。
//对MariaDB使用“MariaDbServerVersion”。
//或者,使用“ServerVersion.AutoDetect(connectionString)”。
//有关常见用法,请参阅拉动请求#1233。
var serverVersion=newmysqlserverversion(新版本(8,0,21));
//将“YourDbContext”替换为您自己的DbContext派生类的名称。
services.AddDbContext(
dbContextOptions=>dbContextOptions
.UseMySql(connectionString,服务器版本)

.EnableSensitiveDataLogging()//错误很明显。该方法不能仅使用一个参数。实际的签名是什么?您使用的是哪一个提供程序?Oracle的Connector/NET很晚才添加了EF Core支持,并且存在一些问题,因此人们通常使用不同的提供程序,如Pomelo和MySqlConnectorBTW。指定数据库和硬编码DbContext中的字符串。如果需要针对不同的数据库,该怎么办?最好使用
AddDbContext
注册DbContext类并指定数据库和连接字符串。通过这种方式,您可以在测试期间切换数据库,例如,无需重新编译。谢谢您的回答。我理解了,但它有在升级Pomelo.EntityFrameworkCore.MySql;扩展名ı时开始出现此错误。@PanagiotisKanavosDid您是否检查该方法的文档?将鼠标悬停在
UseMySql
上,查看它在工具提示中使用了哪些参数?显然,该方法已更改,并且在出现此错误后将记录此更改ı尝试像您的一样操作。Im计划从appsetting.json和
AddDbContext
中获取连接字符串,非常感谢您的回答。我检查了文档并编辑了这样的代码,但没有返回错误。如果再次发生这种情况,请再次编写感谢@lauxjpn
public void ConfigureServices(IServiceCollection services)
    {services.AddCors(options =>
        {options.AddPolicy("AllowOrigin", builder => builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader());

        });