.NET Core使用EF生成資料庫出錯的解決方法
阿新 • • 發佈:2022-01-19
在.NET Core 專案鍾(類庫),使用Entity Framework,建立模型生成時,失敗
Could not load assembly 'xxx'. Ensure it is referenced by the startup project 'xxx'.
改成 64 位即可
假設 ef 程式碼
public class ApplicationDbContext : IdentityDbContext<User> { 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; set; } public virtuhttp://www.cppcns.comal DbSet<Log> Logs { get; set; } public virtual DbSet<LogDetail> LogDetails { get; 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(DeleteBehawww.cppcns.comvior.Cascade); } }
改成 64位的方法,不要在 VS 上面改,要到 專案目錄下更改 csproj 檔案
ps
有了模型後,即可通過遷移建立資料庫。 執行 dotnet ef migrations add InitialCreate 以為遷移搭建基架,併為模型建立一組初始表。 執行 dotnet ef database update 以將新遷移應用到資料庫。 在應用遷移之前,此命令可建立資料庫。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。