C# オブジェクトを Web API コントローラーに渡そうとしています。この API は、そこに投稿された Product タイプのオブジェクトを格納するように構成されています。Jquery Ajax メソッドを使用してオブジェクトを正常に追加しましたが、C# で同じ結果を得ようとしています。
Post リクエストを API に送信する単純なコンソール アプリケーションを作成しました。
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public string Category { get; set; }
public decimal Price { get; set; }
}
static void Main(string[] args)
{
string apiUrl = @"http://localhost:3393/api/products";
var client = new HttpClient();
client.PostAsJsonAsync<Product>(apiUrl, new Product() { Id = 2, Name = "Jeans", Price = 200, Category = "Clothing" });
}
postproduct メソッドは呼び出されません。このオブジェクトをコントローラーに送信する方法は?
アイテムの追加方法:
public HttpResponseMessage PostProduct([FromBody]Product item)
{
item = repository.Add(item);
var response = Request.CreateResponse<Product>(HttpStatusCode.Created, item);
string uri = Url.Link("DefaultApi", new { id = item.Id });
response.Headers.Location = new Uri(uri);
return response;
}