以下是Web服务方法:
[WebMethod]
[SoapHeader("m_Token", Direction = SoapHeaderDirection.InOut)]
public DataTable GetUserProfile()
以下是我用来调用此方法的代码行:
DataTable DT = (DataTable) m_ServerApp.GetUserProfile();
这是编译器抛出的错误:
无法转换类型 'WSAClient.ServerApp.GetUserProfileResponseGetUser ProfileResult'到' 'System.Data.DataTable'
有什么问题?感谢..
答案 0 :(得分:0)
如果您的Web服务被Java客户端使用,那么您将破坏Soap标准,那么它将无法使用您的Web服务。它更好地返回一个XML,这也是一个肥皂标准,在客户端你可以读取数据集中的这个xml并且可以使用数据集的数据集
答案 1 :(得分:-1)
您的客户端代理方法正在返回WSAClient.ServerApp.GetUserProfileResponse.GetUserProfileResult
类型的对象。您可能会发现此类型包含DataTable
。
我同意您不应该返回特定于.NET的类型。 Java客户端无法理解System.Data.DataTable
是什么,只不过.NET客户端才能理解Java Map
。