如何提取插入的记录的ID,该记录是响应标头消息中的返回的



httpresponsemessage 从webapi post post Messages返回此处包含记录ID,该记录ID插入了如何在

后面的代码中提取该ID
public HttpResponseMessage POST([FromBody]Map newmap)
            {
                try
                {
                    using (SHATDbEntities entities = new SHATDbEntities())
                    {
                        entities.Maps.Add(newmap);
                        entities.SaveChanges();
                        var message = Request.CreateResponse(HttpStatusCode.Created, newmap);
                        message.Headers.Location = new Uri(Request.RequestUri + newmap.Id.ToString());
                        return message;
                    }
                }
                catch (Exception ex)
                {
                    return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
                }
            }

**这里响应**收到消息

 HttpClient client = new HttpClient();
 client.BaseAddress = new Uri("http://localhost:2351/");
 client.DefaultRequestHeaders.Accept.Clear();
 client.DefaultRequestHeaders.Accept.Add(
 new MediaTypeWithQualityHeaderValue("application/json"));
 HttpResponseMessage response = client.PostAsJsonAsync(RequestURI, newmap).Result; 

此时,我想从响应消息中提取该ID 任何帮助将不胜感激,谢谢

这应该做必要的。

var resultTask = client.PostAsJsonAsync<MyObject>("http://localhost/api/service",new MyObject()).ContinueWith<HttpResponseMessage>(t => {
var response = t.Result;
var objectTask = response.Content.ReadAsAsync<MyObject>().ContinueWith<Url>(u => {
    var myobject = u.Result;
    //do stuff 
});
});

最新更新