手动为DataTable创建XML以便在C#中发送到Web Service

时间:2013-10-31 10:14:54

标签: c# xml web-services datatable

我现在已经完全坚持了几个小时。

我正在使用网络服务。这个Webservice只有一个方法:

Execute(string strMethod, string strParametersXML)

我在Visual Studio中为WebService创建了一个服务引用。 此WebSerice可用于在服务器上调用方法。因此,对于每种方法,您都有不同的Methodname" strMethod"和不同的" strParametersXML"。

其中一个方法要求在strParameterXML中将DataTable作为参数。如果我在C#中创建数据表并使用dataTableObject.writeXML(<>)拉取XML以将其作为strParameterXML发送,则Webservice仅返回无法解析XML的情况。

如何创建dataTable以将其作为XML-String发送到WebService?

2 个答案:

答案 0 :(得分:1)

以下代码会将Data表转换为Xml字符串

public string ConvertDataTableToXml(DataTable table)
 {
  MemoryStream stream = new MemoryStream();
  table.WriteXml(stream, true);
  str.Seek(0, SeekOrigin.Begin);
  StreamReader reader = new StreamReader(stream);
  string xmlstr;
  xmlstr = reader.ReadToEnd();
  return (xmlstr);
 }

这可能会帮助您将数据表转换为Xml,这可能会在Web服务中重新构建。

最好能获得该特定方法的WSDL

答案 1 :(得分:0)

我真的不明白你想要完成什么。但是,您可以尝试创建一个TypedDataSet,在visual studio中创建它,以便获得.xsd并公开并使用它?