【发布时间】:2022-11-27 11:39:57
【问题描述】:
我正在尝试为我的项目添加迁移。每次我尝试添加迁移时,它都会在构建成功后停止。我已经在这个项目上工作了大约 2-3 周,但这还没有发生。我如何映射我的数据会导致这种情况吗?
该程序有 3 个类 Person、TaskItem 和 Day。
Day 有一个任务列表(将分配给人员)和一个人员列表。
Person 有任务列表,但没有对一天的引用。
TaskItem 需要人员和日期的导航。
DbContext 类
using Microsoft.EntityFrameworkCore;
using TaskDelegatingApp.Models;
namespace TaskDelegatingApp.Data
{
public class TaskDelegatingAppContext : DbContext
{
public TaskDelegatingAppContext(DbContextOptions<TaskDelegatingAppContext> options)
: base(options)
{ }
public DbSet<Person> Person { get; set; }
public DbSet<TaskDelegatingApp.Models.Day> Day { get; set; }
public DbSet<TaskDelegatingApp.Models.TaskItem> TaskItem { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<TaskItem>()
.HasMany(c => c.People).WithMany(e => e.TaskItems).UsingEntity<Person>();
modelBuilder.Entity<Day>().HasMany(e => e.TaskItems).WithMany(e => e.Day).UsingEntity<TaskItem>();
modelBuilder.Entity<Person>().HasMany(e => e.TaskItems).WithOne(e => e.Person).OnDelete(DeleteBehavior.Cascade);
}
}
}
【问题讨论】:
标签: c# asp.net-mvc entity-framework-core