11

AJAXポスト経由でMVC ActionResultコントローラーに渡された生のjson文字列

{"ID":0,"RoutingRuleID":24,"ConditionalType":0,"Field":"Channel","ConditionalOperator":"5","Values":[1,9],"ValueString":""}

しかし、最終的には、json オブジェクトが MVC コントローラーに到達すると、関連付けられた配列の「値」の値が失われます。他のプロパティは正しく設定されています。

C# での私のモデル クラスは次のとおりです。

    public class RoutingConditional 
    {
      public int ID { get; set; }
      public int ParentID { get; set; }

      public string ConditionalType { get; set; }

      public string Field { get; set; }

      public string ConditionalOperator { get; set; }

      public List<string> Values { get; set; }
      public string ValueString{get;set;}
      public RoutingConditional()
      {
        //this.Values = new List<string>(); //I tried to initialize it too did not work
       }
    }

私のMVCコントローラー

    [HttpPost]
    public ActionResult EditConditional(RoutingConditional rcview)
    {
        //rcview.Values = null
    }

私のJavascript

     $.ajax({
        url: actionURL,
        type: "post",
        dataType: 'json',
        contentType: 'application/json; charset=utf-8',
        data: JSON.stringify(myModel.RoutingConditional),
        ........standard success and error
        });

配列(リスト)のnullとして渡されるのはなぜですか?

4

2 に答える 2