2017-04-26 67 views
0

因此,我已经构建了一个REST API本身也消耗另一个API。现在我可以调用其他api,从该调用创建对象,然后发出新的请求并将其发送,但这会耗尽一些性能。C#如何不序列化已经序列化的字符串与内容

我试着再次发送第二个请求,但问题是内容再次序列化,所以我得到了很多反斜杠。这是我的代码,这是否:

[Route("")] 
    public IHttpActionResult GetAllDevices() 
    { 
     var request = new RestRequest(); 
     request = new RestRequest("devices", Method.GET); 
     IRestResponse response = client.Execute(request); 
     return Content(HttpStatusCode.OK, response.Content);//response.Content get's serialized again. 
    } 

正如我所说的,我可以反序列化的第一个电话,然后就提出,在内容,但感觉没有必要。

+0

如果第一个请求返回的字符串作为响应,然后把它粘在的StringContent,然后从ur服务返回那个stringco帐篷。 – loneshark99

+0

但是,然后我的API只是返回一个字符串不正确的请求? – MaxDax

+0

你是什么意思? – loneshark99

回答

0

这里是做这件事的一种方式,记得要明确设置内容类型为application/JSON如果需要的话:

[HttpGet] 
    [Route("test")] 
    public HttpResponseMessage Test() 
    { 
     const string json = "{ \"test\": 123 }"; // from RestClient 
     var res = Request.CreateResponse(); 
     res.Content = new StringContent(json); 
     res.Content.Headers.ContentType = MediaTypeHeaderValue.Parse("application/json"); 
     return res; 
    } 
+0

这工作!谢谢 – MaxDax