public static WebServiceList Deserialize(string path) { XmlDocument doc = new XmlDocument(); doc.Load(path); WebServiceList list = LoadFromUrl(doc.DocumentElement.GetAttribute("url")); foreach (XmlElement e in doc.GetElementsByTagName("service")) { WebService svc = list.FindService(e.GetAttribute("name")); if (svc == null) { continue; } foreach (XmlElement m in e.GetElementsByTagName("method")) { WebMethod method = svc.FindMethod(m.GetAttribute("name")); if (method == null) { continue; } XmlSerializer ser = new XmlSerializer(method.Arg.GetType()); method.SetArg(ser.Deserialize(new StringReader(m.InnerXml))); } } return(list); }
public static WebServiceList LoadFromUrl(string url) { WebServiceList list = new WebServiceList(); list._url = url; list._services = WebService.GetServices(url); return(list); }
private void btnLoad_Click(object sender, System.EventArgs e) { if (txtWsdlUrl.Text.Trim().Length == 0) { MessageBox.Show("Please enter the WSDL URL"); return; } try { WebServiceList list = WebServiceList.LoadFromUrl(txtWsdlUrl.Text); Init(list, null); } catch (Exception x) { MessageBox.Show(x.ToString()); } }
private void btnLoadFile_Click(object sender, System.EventArgs e) { try { if (openFileDialog.ShowDialog() == DialogResult.OK) { string path = openFileDialog.FileName; if (path != null && path.Length > 0) { WebServiceList list = WebServiceList.Deserialize(path); Init(list, path); } } } catch (Exception x) { MessageBox.Show(x.ToString()); } }
private void Init(WebServiceList list, string file) { _webServiceList = list; _currentFile = file; txtWsdlUrl.Text = list.Url; SetTitle(file); propertyGrid.SelectedObject = null; resultsGrid.SelectedObject = null; cbxServices.Items.Clear(); cbxMethods.Items.Clear(); foreach (WebService svc in _webServiceList.Services) { cbxServices.Items.Add(svc); } if (_webServiceList.Services.Length > 0) { cbxServices.SelectedIndex = 0; } }
private void Init(WebServiceList list, string file) { _webServiceList = list; _currentFile = file; txtWsdlUrl.Text = list.Url; SetTitle(file); propertyGrid.SelectedObject = null; resultsGrid.SelectedObject = null; cbxServices.Items.Clear(); cbxMethods.Items.Clear(); foreach(WebService svc in _webServiceList.Services) { cbxServices.Items.Add(svc); } if(_webServiceList.Services.Length > 0) { cbxServices.SelectedIndex = 0; } }
public static WebServiceList LoadFromUrl(string url) { WebServiceList list = new WebServiceList(); list._url = url; list._services = WebService.GetServices(url); return list; }