.NET Core使用EF生成数据库出错的解决方法

2022-04-16 16:40:06

在.NET Core 项目钟(类库),使用Entity Framework,建立模型生成数据库时,失败

Could not load assembly 'xxx'. Ensure it is referenced by the startup project 'xxx'.

改成 64 位即可

假设 ef 代码

public class ApplicationDbContext : IdentityDbCo>{    public ApplicationDbContext(DbContextOptions options)    : base(options)    {    }    public virtual DbSet<User> Users { get; set; }    public virtual DbSet<Role> Roles { get; set; }    public virtual DbSet<Group> Groups { get; set; }    public virtual DbSet<GroupRole> GroupRoles { get; setwww.easck.com; }    public virtual DbSet<Log> Logs { get; set; }    public virtual DbSet<LogDetail> LogDetails { get;www.easck.com set; }    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)    => optionsBuilder.UseSqlServer(        @"Data Source=.;Initial Catalog=DotNetCore;Persist Security Info=True;User ID=sa;Password=25423456;");    protected override void OnModelCreating(ModelBuilder modelBuilder)    {        modelBuilder.Entity<User>()                     .HasOne(d => d.Group)                     .WithMany(t => t.Users)                     .HasForeignKey(d => d.GroupId)                     .OnDelete(DeleteBehavior.Cascade);    }}

改成 64位的方法,不要在 VS 上面改,要到 项目目录下更改 csproj 文件

.NET Core使用EF生成数据库出错的解决方法

.NET Core使用EF生成数据库出错的解决方法

ps

有了模型后,即可通过迁移创建数据库。运行 dotnet ef migrations add InitialCreawww.easck.comte 以为迁移搭建基架,并为模型创建一组初始表。运行 dotnet ef database update 以将新迁移应用到数据库。 在应用迁移之前,此命令可创建数据库。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。