怎么解决web service circular reference 问题
下面是一個非常簡單的例子:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace WebService1
{
??? [Serializable]
??? public class Person
??? {
??????? private Person friend;
??????? private String name;
??????? public String Name
??????? {
??????????? get { return name; }
??????????? set { name = value; }
??????? }
??????? public Person Friend
??????? {
??????????? get { return friend; }
??????????? set { friend = value; }
??????? }
??? }
}
using System;
using System.Data;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.ComponentModel;
namespace WebService1
{
??? /// <summary>
??? /// Summary description for Service1
??? /// </summary>
??? [WebService(Namespace = "http://tempuri.org/")]
??? [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
??? [ToolboxItem(false)]
??? public class Service1 : System.Web.Services.WebService
??? {
??????? [WebMethod]
??????? public Person HelloWorld()
??????? {
??????????? Person him = new Person();
??????????? Person her = new Person();
??????????? him.Friend = her;
??????????? her.Friend = him;
??????????? return him;
??????? }
??? }
}
運行 ASMX web service 將會得到下面的錯誤:
System.InvalidOperationException: There was an error generating the XML
document. --->
System.InvalidOperationException: A circular reference was detected while
serializing an object of type Person.
IBM 網站有一篇文章描述了這個問題:
http://www-106.ibm.com/developerwor...s-tip-j2eenet1/
各位兄弟,誰解決過這個問題
轉載于:https://www.cnblogs.com/shanyou/archive/2006/07/21/456700.html
總結
以上是生活随笔為你收集整理的怎么解决web service circular reference 问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 格密码教程(三):基础域概念,体积等;阿
- 下一篇: 男人与佛的对话