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

web服务的问题。真心急,求给我帮助。
请耐心看,我尽量简化。
我要做一个服务,连接某系统sqlserver数据库,封装出新的服务提供给php系统使用。
我的返回是序列化json格式的数据,但是webservice返回的结果外层有类似<string>的xml标记。
他们希望的是服务端返回纯json数据,不带xml封装的。但是这个貌似不能实现。
我想知道除了webservice还有什么微软技术能实现web服务?wcf可以不?
或者做过php的知道如何处理呢?他们按照xml处理也得不到数据。要求php端不使用soap,而是直接post。
c# webservice wcf php soap

------解决方案--------------------
按理说php应该是有xml的处理能力的,对xml进行正则匹配或者其他的应该是没问题的
不过他们的需求可能是针对一个特定的方法,请求一个路径
比如说:http://xxx.com/xxx.ashx?method=getData
通过这种方式,调用getData方法
而getData直接返回数据:
public void getData()
{
   Response.Write("xxxxx");
}
这样客户端可以得到xxxxx字符

------解决方案--------------------
用asp.net再包装一层,调用返回的xml,过滤掉外侧标记后的字符串直接写response的textstream。
------解决方案--------------------
使用WCF或WebService都可以.

这个数据中间需要有类做中间传输,保存客户端传送到数据访问层,提供存储.
数据返回时,可以直接返回类,至少WCF这样做没有问题,WebService我是没有试过,如果不可以返回类,那么就先将类转换成xml,再返回客户端. 

如果数据访问层返回已经是类,那么直接转换成JSON,如果返回来的是xml,先把xml转换成类,再转换成JSON,返回给前台,用中间文件ashx
------解决方案--------------------
那你就直接写个ashx呗,干嘛要用webservice.