Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Return html format on wcf service instead of json or xml

Tags:

c#

wcf

webget

I have the operation contract:

[System.ServiceModel.Web.WebGet( UriTemplate = "c" , BodyStyle = WebMessageBodyStyle.Bare )]
[OperationContract]
string Connect ( );

and I have it implemented as:

    public string Connect ( )
    {
        return "<a href='someLingk' >Some link</a>";
    }

when I go to that link I get: enter image description here

how can I format the response as html? or even plain text. I don't want to get back html nor json...

I know I can create a website that queries the service but I just want to create a simple "Console like" application that works on any browser...

like image 871
Tono Nam Avatar asked Dec 06 '12 22:12

Tono Nam


1 Answers

Returning a stream allows you to return a raw string:

[System.ServiceModel.Web.WebGet( UriTemplate = "c" , BodyStyle = WebMessageBodyStyle.Bare )]
[OperationContract]
public System.IO.Stream Connect()
{
    string result = "<a href='someLingk' >Some link</a>";
    byte[] resultBytes = Encoding.UTF8.GetBytes(result);
    WebOperationContext.Current.OutgoingResponse.ContentType = "text/html";
    return new MemoryStream(resultBytes);
}
like image 141
sroes Avatar answered Sep 28 '22 23:09

sroes