在MVC中返回JSON时出错,序列化类型为“System.Data.Entity.DynamicProxies.Photos....这个会的对象时检测到循环引用。
public ActionResult GetSdirsbyFdirid(int id) { // db.Configuration.LazyLoadingEnabled = false; db.Configuration.ProxyCreationEnabled = false; List<Seconddirectory> list = db.Seconddirectories.Where(x => x.firstdirectoryid == id).OrderBy(x => x.sort).ToList<Seconddirectory>(); return Json(list,JsonRequestBehavior.AllowGet); }
加一句这个
db.Configuration.ProxyCreationEnabled = false;
就可以解决
因为这个表和另一个表是有一对多关系的,当序列化表1的时候,会找到和另一个表2关联的字段,就会到另一个表2中序列化,然后另一个表2中也有一个字段和表1相关联.这样.序列化就会发生这种错误!