【发布时间】:2010-09-18 11:22:23
【问题描述】:
我从 WCf 方法返回一个 xmlElement。 当我在客户端进行服务引用时,相同的方法返回 XElement 而不是 XmlElement。 我尝试了所有方法:更新服务引用,创建新的服务引用,但没有帮助。
这是我的客户:
ServiceReference1.BasicServiceClient basicWCfClient = new ServiceReference1.BasicServiceClient();
XmlElement xmlelement = basicWCfClient.GetData(5);
basicWCfClient.Close();
我得到一个错误: “无法将类型 'System.Xml.Linq.XElement' 隐式转换为 'System.Xml.XmlElement'”
当方法在服务器端时:
public XmlElement GetData(int value)
{
XmlDocument xmldoc = new XmlDocument();
xmldoc.LoadXml("<msg><node1>Hello</node1><node2>World</node2><request_params><mynode>More</mynode></request_params></msg>");
XmlElement xmlElement = xmldoc.DocumentElement;
return xmlElement;
}
和界面:
[ServiceContract]
public interface IBasicService
{
[OperationContract]
[WebGet(UriTemplate = "GetData?value={value}")] // Add support for HTTP GET Requests
XmlElement GetData(int value);}
发生了什么事?
【问题讨论】: