C# &引用;“双工”;Ef代码第一个数据库操作
我有一个C# &引用;“双工”;Ef代码第一个数据库操作,c#,.net,database,entity-framework,ef-code-first,C#,.net,Database,Entity Framework,Ef Code First,我有一个用户类,该类具有以下字段: public int Id { get; set; } public ICollection<Event> AdminEvents { get; set; } public ICollection<Event> SubscribedEvents { get; set; } 在我的上下文中创建模型时: modelBuilder.Entity<User>().HasMany(u => u.SubscribedEvents
用户
类,该类具有以下字段:
public int Id { get; set; }
public ICollection<Event> AdminEvents { get; set; }
public ICollection<Event> SubscribedEvents { get; set; }
在我的上下文中创建模型时
:
modelBuilder.Entity<User>().HasMany(u => u.SubscribedEvents).WithMany(u => u.Subscribed);
modelBuilder.Entity<User>().HasMany(u => u.AdminEvents).WithRequired(u => u.Admin).WillCascadeOnDelete(false);
modelBuilder.Entity().HasMany(u=>u.SubscribedEvents)。with many(u=>u.Subscribed);
modelBuilder.Entity()有许多(u=>u.AdminEvents)。WithRequired(u=>u.Admin)。WillCascadeOnDelete(false);
- 这里的要点是,用户可以创建一个事件(
),也可以订阅其他事件(Event.Admin&&Admin.Id
)User.SubscribedEvents&&Event.subscribed
- 当我尝试访问
User.SubcribedEvents.ToList()时,它抛出 以下错误: 值不能为null。参数名称:源 但插入工作正常,值进入正确的表:
**dbo.UserEvents**
- 我的实体设计出了什么问题?。如果你需要更多的信息
要查找故障,请询问。谢谢李>
modelBuilder.Entity<User>().HasMany(u => u.SubscribedEvents).WithMany(u => u.Subscribed);
modelBuilder.Entity<User>().HasMany(u => u.AdminEvents).WithRequired(u => u.Admin).WillCascadeOnDelete(false);