日期:2014-05-17  浏览次数:20344 次

一个web services的问题,大神来啊
我写了一个webservices 里面有个方法去SAP里面取值需要传一个参数返回一个DataTable。我在VS里面调试可以取到值并返回一个XML数据。

然后我发布到IIS上之后调用这个方法却没有什么数据返回回来,只返回了这个
<?xml version="1.0" encoding="utf-8" ?> 
  <DataTable xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:nil="true" xmlns="http://tempuri.org/" />


请问大神们,为什么啊?怎么解决?
Web?Services

------解决方案--------------------
1.对策:看下IIS里WEBSERVICE的虚似目录,.net的版本是否有问题
2.对策:返回值如果是DataTable,就要注意下给DataTable起个名。DataTable dt=new DataTable("AAAA"); 
3.对策:确认IIS所在机器的防火墙是否关闭,如果没有,关闭防火墙试试。当然最好的办法是修改防火墙的配置,不是让它全部不起作用。
4.对策:进入C:/WINDOWS/Microsoft.NET/Framework/相应版本/,运行aspnet_regiis -i,解决。

例如发布的webservice的.NET版本是v2.0.50727,那么就进到  C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727,运行aspnet_regiis -i,出现安装过程,成功结束后就OK.

多检查总会有原因存在。。
------解决方案--------------------
确保取数据是正常的,比如数据库连接字符串的配置等