我仍然很难让Json.Net和NHibernate一起玩得很好。即,让Json.NET序列化代理的NHibernate对象。
我遵循了这里的建议,无论是接受的答案还是建议,都没有问题。
上述解决方案的最大问题是,现代版本的NHibernate似乎正在使用该INHibernateProxyProxy接口创建代理(而不是INHibernateProxy?还有其他人可以确认吗?),在我的案例中,其基类为NHibernate.Proxy.DynamicProxy.ProxyDummy,因此不揭示任何底层内容当我尝试使用自定义scontract解析器创建Json合同时,对象:
protected override JsonContract CreateContract(Type objectType)
{
if (typeof(NHibernate.Proxy.INHibernateProxy).IsAssignableFrom(objectType))
return base.CreateContract(objectType.BaseType);
else
return base.CreateContract(objectType);
}
Run Code Online (Sandbox Code Playgroud)
有人对如何INHibernateProxyProxy有效处理有任何建议吗?