我有这个项目映射,我正在努力与模型的JSON.NET序列化。 我试过lazyloading = false,也禁用了代理。但是,当我为每个项目请求获取所有项目时,它无法正常工作。
这是我的映射:
Class ProjectMapper()
{
this.HasMany(p => p.Stakeholders).WithMany(u => u.Projects).Map(mc =>
{
mc.MapLeftKey("ProjectID");
mc.MapRightKey("UserID");
mc.ToTable("userprojects");
});
this.HasMany(p => p.Requests).
WithOptional(r => r.Project).HasForeignKey(r => r.ProjectID)
.WillCascadeOnDelete(false);
}
Class RequestMapper()
{
this.HasOptional(r => r.Project).WithMany(p => p.Requests).HasForeignKey(r=>r.ProjectID);
}
Class UserMapper()
{
this.HasMany(u => u.Projects).WithMany(p => p.Stakeholders).Map(mc =>
{
mc.MapLeftKey("ProjectID");
mc.MapRightKey("UserID");
mc.ToTable("userprojects");
});
}
我还更改了全局级别的设置:
GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
但是解决方案是什么?在冲到客户端之前,我是否必须转到POCO模型并将所有EF模型复制到POCO。