猿问

DbContext 的 C# 问题:参数 1:无法将“字符串”转换为

我有一些问题。我决定创建一个新类,该类将负责与 DataBase 的连接。DbContext


public class PetAlertContext : DbContext

{

    public PetAlertContext() : base("PetAlert") { }


    public DbSet<Zwierze> Zwierzaki { get; set; }

        public DbSet<Osoba> Osoby { get; set; }

        public DbSet<Placowka> Placowki { get; set; }

        public DbSet<Ogloszenie> Ogloszenia { get; set; }

    }

}

但是我在基地名称附近有一些例外:


参数 1:无法将“字符串”转换为 'Microsoft.EntityFrameworkCore.DbContextOptions'。


我在这样的代码中发现了类似的问题和响应,但我在理解这种结构方面遇到了一些问题。


你会这么好心地帮我吗?我注释了这些:


public PetAlertContext(string connectionString) : base(GetOptions(connectionString))

{

}


private static DbContextOptions GetOptions(string connectionString)

{

    return SqlServerDbContextOptionsExtensions.UseSqlServer(new DbContextOptionsBuilder(), connectionString).Options;

}


MM们
浏览 141回答 1
1回答

繁花如伊

Entity Framework Core 的构造函数不将单个字符串作为参数,而是采用实例。当前尝试使用的构造函数是 EF6 构造函数,它仅将连接字符串作为参数。您在问题中注释掉的代码向您展示了如何根使用 a 实例化 i.因此,假设您使用的是 SQL Server 数据库,则可以使用该代码。DbContextOptionsDbContextOptionsDbContextOptionBuilder
随时随地看视频慕课网APP
我要回答