WebService传XML 简单实例
传送
[WebMethod]
public XmlDataDocument GetSiteAData(string AssignName) { XmlDataDocument xd = new XmlDataDocument(); DataSet ds = BusinessWork.BusinessWorkDataSet("TreeView1"); xd = new XmlDataDocument(ds); XmlNode root1 = xd.DocumentElement; XmlNodeList roots = root1.SelectNodes("url"); foreach (XmlNode roota in roots) //为所有元素加上站点名称标记 { XmlElement Link = xd.CreateElement("SiteName"); Link.InnerText = ConfigurationSettings.AppSettings["SiteName"].ToString(); roota.AppendChild(Link); } return xd; }
异步调用
IAsyncResult ar1; IAsyncResult ar2; localhost.WebService serviceA = new localhost.WebService(); XmlNode xmlNode1; XmlNode xmlNode2; ////直接调用 //xmlNode1 = serviceA.GetSiteAData("2"); //异步调用 ar1 = serviceA.BeginGetSiteAData("3", null, null); ar2 = serviceA.BeginGetSiteAData("2", null, null); xmlNode1 = serviceA.EndGetSiteAData(ar1); xmlNode2 = serviceA.EndGetSiteAData(ar2); StringBuilder xmlString1; xmlString1 = new StringBuilder(xmlNode1.OuterXml); XmlDataDocument xd = new XmlDataDocument(); xd.LoadXml(xmlString1.ToString()); DataSet ds = new DataSet(); ds.ReadXml(new XmlNodeReader(xd)); GridView1.DataSource = ds.Tables[0]; GridView1.DataBind();