簡體   English   中英

發布JSON數據時,MVC控制器的string []參數為null

[英]MVC controller's string[] parameter is null when posting JSON data

我用jQuery發布數據,但數組數據有問題。 提供給MVC控制器的值始終為空。

這是我的JavaScript代碼:

 var FilterCategory = $('input:checkbox:checked').map(function () {
                return this.value;
            }).get();
 var posting = $.post(url, { cursorid: lastid, CatFilter: FilterCategory });

來自網絡的表單數據:

cursorid:5434cdc84ba4dd0c40396851
Filter[]:1
Filter[]:3
Filter[]:4

這是C#方面:

public ActionResult GetDataTweets(string cursorid,string[] CatFilter)
    {
       bla bla
    }

cursorid有一個值,但CatFilter為null。

我需要怎么做才能為CatFilter提供正確的值?

這段代碼在這里:

var posting = $.post(url, { cursorid: lastid, CatFilter: FilterCategory });

從MVC的角度來看,它正在發送一個類,因此您需要一個互惠的C#類來打包數據。 創建一個類來處理該數據,例如:

我假設您的CatFilter數組是一個字符串數組:

public class Data{
  public string cursorid { get; set;}
  public string[] CatFilter {get; set;}
}

然后更改您的控制器:

public ActionResult GetDataTweets(Data data)
{
   var s1 = data.cursorid;
   var s2 = data.CatFilter[0];
}

如果CatFilter是一個類,則需要創建一個CatFilter類以映射到javascript版本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM