Skip to content

Instantly share code, notes, and snippets.

@darrelmiller
Created March 6, 2012 22:50
Show Gist options
  • Save darrelmiller/1989553 to your computer and use it in GitHub Desktop.
Save darrelmiller/1989553 to your computer and use it in GitHub Desktop.
public class PlainTextFormatter : MediaTypeFormatter
{
public PlainTextFormatter()
{
SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/plain"));
}
protected override System.Threading.Tasks.Task<object> OnReadFromStreamAsync(Type type, System.IO.Stream stream, HttpContentHeaders contentHeaders, FormatterContext formatterContext)
{
return new Task<object>(() =>
{
return new StreamReader(stream).ReadToEnd();
});
}
protected override Task OnWriteToStreamAsync(Type type, object value, Stream stream, HttpContentHeaders contentHeaders, FormatterContext formatterContext, System.Net.TransportContext transportContext)
{
return new Task(() =>
{
var writer = new StreamWriter(stream);
writer.Write(value.ToString());
});
}
protected override bool CanReadType(Type type)
{
return true;
}
protected override bool CanWriteType(Type type)
{
return true;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment