どのようにして複雑なオブジェクトにバインドするルートデータと本文を調べるにはasp.net webapiを取得できますか?次のルート「API /製品/ {[商品} /メーカー/ {manufacturerId}」私の制御方法はFluentvalidationを使用したWebAPIとモデルバインディング
public IHttpActionResult Create(CreateProductManufacturerModel
createProductManufacturerModel)
と私のようであるので、私は、商品コード及びmanufacturerIdモデルにバインドする必要を使用
モデルは私が私の方法は以下の通りであることを変更することができます知っているが、私は全体createproductmanufacturermodelを検証するためにfluentvalidationを使用しています
public class CreateProductManufacturerModel
{
public int ProductId { get; set; }
public int ManufacturerId { get; set; }
public bool IsDefault { get; set; }
public string ManufacturerCode { get; set; }
public string Description { get; set; }
}
で、これは自動的に行われます(http://www.justinsaraceno.com/2014/07/fluentvalidation-with-webapi2/ see-)。したがって、productIdとmanufacturerIdはゼロとして設定されているため、正しく検証されません。
public IHttpActionResult Create(int productId, int manufacturerId, CreateProductManufacturerModel
createProductManufacturerModel)
私はモデルバインダーを試してみましたが、その後は自動的に流動性検証を起動しません。これは問題ではないが、投稿されるボディがjson形式であるかどうかは不明です。
ありがとうございます。
public IHttpActionResult Create([FromBody]CreateProductManufacturerModel
createProductManufacturerModel){}
、その後、あなたが必要とする2つの値の検証:createProductManufacturerModel.ProductIdとcreateProductManufacturerModel.ManufacturerIdを
ポール
jsonデータ内の他の値を使って 'createproductmanufacturermodel'にproductIdとmanufacturerIdを追加できないのはなぜですか? – user3014311
データは2回提供されるので、気になるのですが、 – phooey