各位好 我webservice初学 有几点疑惑:
1.webservice要求 返回值必须可序列化的。问题是:这个序列化和反序列化过程是webservice自动完成的吧?为什么我看到好多人在webservice方法中自己还要手动写序列化之后再return呢?这样webservice还会再做一次序列化么?客户端需要手动再做反序列化么?
2.我有一个方法是这样的:
[WebMethod]
public DataTable A(string keywords)
{
DataTable dt = GetDataTable(keywords);
dt.TableName = "Tablemeta";
dt.RemotingFormat = SerializationFormat.Xml;
return dt;
}
问题是:dt.RemotingFormat = SerializationFormat.Xml;这句代码有用么?默认不就是xml格式的么?或者有什么其他作用?还有如果我这样写 客户端还能获取到json格式的数据么?应该如何获取 给段代码呗 谢谢各位!!
------解决方案--------------------
webservice中需要将?DataTable格式转化成json格式传输,设置RemotingFormat = SerializationFormat.Xml;
再序列化,通过WebService传输,客户端接收,再反序列化,确实效果大大的优于直接传送DataSet,不仅网络传输中如此,即使本机,性能改善也非常明显.
具体的楼主可以看看这个