我有一个类,它有许多延迟加载的虚拟属性
public class TestPlan
{
public virtual ICollection<Test> Test { get; set; }
public virtual Commercial Commercial { get; set; }
...
}
并且这个类必须在程序的后面进行序列化。问题是,由于这些属性是虚拟的,我每次尝试序列化它时都会遇到错误(循环引用)。现在这是我的问题:
我的老板告诉我使用他所谓的 View Object,它是同一个对象,但没有未使用的属性。你觉得这怎么样?我应该将那些未使用的属性设置为 null 还是什么?
背景:
序列化对象旨在用于基础网格(一个不错的数组)。我已经尝试[ScriptIgnore]
在我的虚拟机上使用该属性,但没有奏效。
我还尝试检索我的 TestPlans,database.TestPlans.AsNoTracking().ToList()
但出现错误(当使用 NoTracking 合并选项返回对象时,只有在 EntityCollection 或 EntityReference 不包含对象时才能调用 Load。)
提前致谢