以下のコードを使用して、プロキシ オブジェクトをシリアル化できます。
public class NHibernateContractResolver : DefaultContractResolver
{
protected override JsonContract CreateContract(Type objectType)
{
if (typeof(NHibernate.Proxy.INHibernateProxy).IsAssignableFrom(objectType))
return base.CreateContract(objectType.BaseType);
return base.CreateContract(objectType);
}
}
しかし、シリアル化中にオブジェクトをJSON.NET
無視するにはどうすればよいですか。NHibernate Proxy
私が直面している問題は、親オブジェクトが何千もの子オブジェクトをフェッチしていることです。ここで、JSON を親オブジェクトに対してのみ送信したいので、プロキシ オブジェクトを無視して熱心に読み込まれた関係のみをフェッチしたいと考えています。
上記のコードにコメントすると、JSON.NET がプロキシ オブジェクトのシリアル化に失敗したというエラーが表示されます。
助けてください!