如何在C#中返回记录集?这些记录是从SQL Server检索的。默认情况下,Web服务使用XML - 我不希望这样。我希望它将它作为记录集返回。这些值将由ASP classic使用。
答案 0 :(得分:3)
您无法返回记录集。并且您的.NET类型都不会与经典ASP兼容。您只需要从XML读取数据。理解XML模式并使用Microsoft.XMLDOM
来解析数据。
答案 1 :(得分:2)
除了解析XML响应之外,您无法通过任何其他方法在Classic ASP中提取ASP.NET WebService。
以下链接提供了有关如何利用MS SOAP Toolkit使您更轻松的一些信息:http://www.4guysfromrolla.com/webtech/070302-1.shtml
答案 2 :(得分:1)
您可以将DataTable
转换为ADO记录集。这是一些代码的链接。 http://chiragrdarji.blogspot.com/2007/02/converting-dataset-into-recordset.html
我没有测试过代码,但从它的外观来看,它应该可行。
如果从c#app返回记录集com
对象时遇到问题,可以使用Recordset.Save将记录集转换为xml并指定adPersistXML
http://msdn.microsoft.com/en-us/library/ms681501%28v=VS.85%29.aspx
然后,您将拥有一个ado记录集的xml字符串表示形式,您可以将其从c#app返回到经典ASP。您的ASP应用程序应使用recordset.Open与xml作为参数加载到记录集。 http://msdn.microsoft.com/en-us/library/ms675544%28v=VS.85%29.aspx
修改1 以下是实现这一目标所需采取的步骤。
在C#web-service
中DataSet
。DataTable
的{{1}}转换为DataSet
。Recordset
转换为xml字符串。在客户端
Recordset
对象。Recordset
。答案 3 :(得分:1)
SOAP Web服务返回XML。这是他们唯一可以回归的东西。周期。
(对于nitpickers,是的,WCF可以创建返回JSON或二进制文件的Web服务,但是经典ASP的运气比使用XML要少。)
答案 4 :(得分:-1)