I have api controller, which receives bytes, and sends bytes as answer.
public class RenderController : ApiController
{
[HttpPost]
public async Task<HttpResponseMessage> Post(string id)
{
var bytes = await Request.Content.ReadAsByteArrayAsync();
IoSys.Root = new IoSys {InputStream = new MemoryStream(bytes)};
var model = new DrawingChain().Load();
IoSys.Root.CloseIn();
using (var result = Request.CreateResponse(HttpStatusCode.OK))
{
using (var stream = new MemoryStream())
{
result.Content = new StreamContent(stream)
{
Headers = {ContentType = new MediaTypeHeaderValue("application/octet-stream")}
};
IoSys.Root = new IoSys {OutputStream = stream};
model.Save();
return result;
}
}
}
At line of returning a result, client is get a 500 error. I think, I work with streams not properly.