ActiveRecord 对象在Json序列化时,出现异常Newtonsoft.Json.JsonSerializationException: Self referencing loop

 这主要是由于ActiveRecord对象默认的属性中设置了Lazy = true,因此查询中,使用Session.load出的是一个Proxy对象,很显然MonoRail的JsonHelper还没有解决这个问题。
在Json.Net(http://www.codeplex.com/Json) 论坛上有人提出了解决方法,
http://www.codeplex.com/Json/Thread/View.aspx?ThreadId=18188

不过,使用AR提供SlicedFindAll方法可以直接返回一个真实对象,可用于序列化。其中,FindFirst,FindOne都是使用的这个方法查询的。因而可以正常的序列化。
posted @ 2008-01-06 01:11 行知 阅读(...) 评论(...) 编辑 收藏