环境:EF 6.0,SQL 2012,WebAPI 2
方法1:使用块
using(MyEntities Test= new MyEntities ())
{
var wareData = Test.WareTypes.ToList(); //Here the actual DBConnect and data fetching happens, i hope i m correct
return Request.CreateResponse<IEnumerable<WareType>>(HttpStatusCode.OK, wareData);
}
无论ProxyCreation标志的状态如何,这些方案都适用
如果我返回
则失败只有在使用
时才会有效方法2:不使用块
MyEntities Test= new MyEntities ();
var wareData = Test.WareTypes; //Here the actual DBConnect and data fetching happens, i hope i m correct
return Request.CreateResponse<IEnumerable<WareType>>(HttpStatusCode.OK, wareData);
使用这种方法,无论有没有ProxyCreation标志,结果都会略有不同。但这里只有对象处理错误消息没有出现。
问题: 的设定:
预期结果: 自引用循环(如果我不像方法2中那样包含代码,我会得到它) 实际输出: DbContext对象与自引用循环错误一起处理
有兴趣知道此行为的解释....
P.S: 有工作解决方案....问题更多的是理解这个概念..