asp.net-mvc-3json.netnhibernate-3

Serialize nhibernate entity to json error: Cannot serialize a Session while connected


I'm trying to serialize an nhibernate entity in to json but I always get this error saying Cannot serialize a Session while connected? Does it has something to do with nhibernate proxy?


Solution

  • I started getting the same error when I switched from System.Web.Script.Serialization.JavaScriptSerializer to Newtonsoft.Json.

    Using the contract resolver from this answer fixed this problem:

    string output = JsonConvert.SerializeObject(theObject,
                    new JsonSerializerSettings()
                    {
                        ContractResolver = new NHibernateContractResolver()
                    });