3

ApiControllerサブクラスを使用すると、Postメソッドでそれを次のような既存のモデルオブジェクトにバインドすることができます。

public class RegisterController : ApiController
{
    public void Post(Product product)

しかし、受信したJSONデータに、複数のモデルオブジェクトを作成するために使用するデータが含まれている場合、データに直接アクセスするにはどうすればよいですか?

    public void Post(dynamic value)

nullとして値を返します。request.POST ['name']などのように簡単にアクセスする方法はありますか?

データが次のようになっているとしましょう

{
    'productID':1,
    'productName':'hello',
    'manufacturerID':1,
    'manufacturerName':'world'
}
4

1 に答える 1

5

1 つのオプションは、Request オブジェクトの HttpContent インスタンスで ReadAsAsync* メソッドの 1 つを使用することです。

public void Post() {
   var result = this.Request.Content.ReadAsAsync<string>().Result;
}

データを送信している形式はわかりませんが、この方法で取得できます。

複数のオブジェクトに対してもこれを試すことができます...

public void Post(IEnumberable<Product> products) {

}
于 2012-05-04T16:16:06.297 に答える