我有一个模型edmx模型,我正在使用像这样的POCO:
public class ContactPerson
{
public virtual Guid ContactPersonId { get; set; }
public virtual string FullName { get; set; }
public virtual Guid PositionId { get; set; }
public virtual DateTime Birthday { get; set; }
public virtual Position Position { get; set; }
}
public class Position
{
public virtual Guid PositionId { get; set; }
public virtual string Name { get; set; }
public virtual ICollection<ContactPerson> ContactPersons { get; set; }
}
当我尝试使用Json()方法序列化from a in _context.Positions select a
时,它会检测循环引用。我相信这是因为Position有一个对ContactPersons集合和ContactPerson的引用,同时对Position有一个参考。
问题很明显,该怎么办?
答案 0 :(得分:2)
尝试在ContactPerson.Position属性中使用ScriptIgnoreAttribute。它会说JavaScriptSerializer不会序列化该属性,它会破坏循环引用。