2009-05-22 62 views
3

我已经能够从我为.Net 2.0设置的Web服务返回HashTable,但该服务无法以JSON重新调用DataTable。我不断收到以下错误:'序列化对象时检测到循环引用'。有小费吗?如何从.Net Web Service返回DataTable?

[WebMethod(EnableSession = true) ] 
public DataTable getSavedAddresses() 
{ 
    DataTable dt = new DataTable(); 
    if (Session["ClientID"] != null) 
    { 
     int clientId = Convert.ToInt32(Session["ClientID"]); 
     dt = Address.GetClientShippingAddresses(clientId); 
    } 
    return dt; 

}

回答

1

圆形参考可能是由于DataTable具有Columns属性,并且每个DataColumn对象具有Table属性。

this blog post by Rick Strahl中的信息可能对您有所帮助。

+0

有趣。是的,我读过它,但我无法弄清楚。 – GreenEggs 2009-05-22 21:23:10