我有一个包含 2 个项目的 ASP.Net Core 3.0 解决方案:Web(启动项目)和 Core(类库)。我尝试使用包管理器控制台创建迁移:
add-migration Initial -Project Core -StartupProject Web
并得到以下错误:
Could not load file or assembly 'netstandard, Version=2.1.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
这两个项目在引用中都有 Microsoft.EntityFrameworkCore.SqlServer 和 Microsoft.EntityFrameworkCore.Tools。这就是我在 Startup.cs 中创建连接的方式:
public void ConfigureServices(IServiceCollection services)
{
var connection = Configuration.GetConnectionString("DefaultConnection");
services.AddDbContext<ApplicationContext>(options =>
options.UseSqlServer(connection));
services.AddControllersWithViews();
}
和我在 appsettings.json 中的连接字符串:
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=FinApp;Trusted_Connection=True;"
}
这是我的 ApplicationContext.cs:
public class ApplicationContext : DbContext
{
public DbSet<Account> Accounts { get; set; }
public DbSet<Category> Categories { get; set; }
public DbSet<Currency> Currencies { get; set; }
public DbSet<Operation> Operations { get; set; }
public DbSet<User> Users { get; set; }
public ApplicationContext()
{
}
}
有没有人有同样的问题?
最佳答案
我认为您必须像这样定义上下文承包商:
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options) : base(options)
{
}
关于c# - 添加迁移时无法加载文件或程序集网络标准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60351698/