发布WCF数据

时间:2014-07-10 14:44:12

标签: c# wcf

我对WCF很陌生,我在尝试将数据从类中发布到服务响应时遇到了一些麻烦。

public class PingService : ItemData
{

    public GetUrl GetUrlData(string GET_XML)
    {


        GetUrl data = new GetUrl(GetUrl.GET_XML_DATA);


        //Generates string xml_final


        //What I want to do
        return xml_final

        //My only option
        return data ;

    }}

我的问题是如何返回xml_final字符串?它会给我一个错误,说"它不能将字符串转换为WcfService2.GetUrl"我认为,这意味着我不能简单地输入一个字符串作为回报。

以下是我的服务和数据合同。

[ServiceContract]
[XmlSerializerFormat]
public interface ItemData
{
    //[OperationContract]
    //string GetItemData(GetUrl data);

    [OperationContract]
    [WebInvoke(Method = "GET",
        ResponseFormat = WebMessageFormat.Xml,
        UriTemplate = "GetUrl/{GET_XML}")]

    //XML TAGS for Service
    GetUrl GetUrlData(string GET_XML)
    [WebInvoke(Method = "POST",
       UriTemplate = "GetUrl")]
    Stream TestPost(Stream stream);

}

[DataContract]
[XmlRoot(ElementName = "GetUrl")]
public class GetUrl
{
     [XmlAttribute("uri")]
    public static string GET_XML_DATA { get; set; }

    public string GET_XML { get; set; }


    public GetUrl() { }

    public GetUrl(string xml)
    {
        this.GET_XML = xml;
    }
}

1 个答案:

答案 0 :(得分:0)

return new GetUrl(xml_final);而不是return xml_final,它会给您带来错误。