I am currently developing an application that integrates with a Web API. I have an async function which sends a `PUT` request to the Web API in order to update a product. 

```
    public async Task<ResponseStatus> updateProduct(Item product)
    {
        string URL = client.BaseAddress + "/catalog/products/" + product.id;
        HttpResponseMessage response = await client.PutAsJsonAsync(URL, product).ConfigureAwait(false);
        var payload = response.Content.ReadAsStringAsync();
        ResponseStatus res = JsonConvert.DeserializeObject<ResponseStatus>(await payload.ConfigureAwait(false));

        return res;
    }

```

In a Console App I am using to test my application this function works exactly as intended and I receive the updated product as a JSON String in the `Result` of the Response.

[![enter image description here](https://i.stack.imgur.com/3OX8g.png)](https://i.stack.imgur.com/3OX8g.png)

However when I attempt to call this function from an ASP.Net application, I receive an empty string in the `Result`, even though it has a status code of 200. I can also see that my update has not taken effect on the product, even though it definitely updates when called in the Console Application.

[![enter image description here](https://i.stack.imgur.com/UxDBa.png)](https://i.stack.imgur.com/UxDBa.png)

There are a few Web API calls that I have such as this `GET` request, that works in almost exactly the same way, except this works in the ASP.Net application AND the test Console App.

```
    public async Task<Product> getProductByID(int id)
    {
        Product product = null;
        string URL = client.BaseAddress + "/catalog/products/" + id;
        string additionalQuery = "include=images,variants";
        HttpResponseMessage response = await client.GetAsync(URL + "?" + additionalQuery).ConfigureAwait(false);
        if (response.IsSuccessStatusCode)
        {
            var payload = response.Content.ReadAsStringAsync();
            product = JsonConvert.DeserializeObject<Product>(await payload.ConfigureAwait(false));
        }
        return product;
    }

```

Why in the ASP.Net app do I receive a Success Status Code even though the `Result` is empty and the update to the product is not actually made?