いる渡され、私は、この宣言でアクションにポストを実行するためにajax
を使用しています:モデルのプロパティがnull
public ActionResult MonitorReport(FilterCaseViewModel model)
とりわけFilterCaseViewModel
は、この特性を持っています
JSON
使用してい
public class FilterCaseViewModel
{
public List<int> Status { get; set; }
}
は、JSON
オブジェクトは、(それはかなり長いですと、私はそれの残りの部分を省略しました)このように起動します。私は、このしかしStatus
プロパティがインスタンス化されていると0
の値が追加されているにもかかわらずStatus
のために解釈し、空の文字列を取得していますリクエストフォームを見てみると
{ model: {"TextSearch":null,"Generic1":null,"Generic2":null,"Status":null,"Team":null,"Client":null
リストに追加します。
私はStatus
プロパティはnull
ことを期待し、なぜそうではないのですか?
注:ステータスはコンストラクタ内のどこにも設定されません。
あなたは 'Status'はとても' DefaultModelBinder'はあなたのコレクションを初期化します(と、それは空のコレクションになります)の名前/値のペアを送信します。名前を省略すると 'null 'になります。しかし、あなたの主張が重複しているわけではありません。 –
また、最初のイメージは何ですか? 'Request.Form'の' AllKeys'を調べて、 'contentType = 'application/json''を持つajaxリクエストでは空になります。 ) –
@StephenMuecke contentTypeをJSONに明示的に設定しなかったのですが、私はJSONオブジェクトを渡したので自動的にコンテンツタイプを設定すると思いました。 –