在前台提交(post)的数据中。除了强类型的数据外,还有一个额外的json数据提交
在这里我的办法是,在前台把json对象转换成字符串,然后提交。
测试demo
前台:
@using(Html.BeginForm())
{
<input type="text" id="json" name="json"/>
<input type="submit" value="提交"/>
}
<script>
var json = [{ "Name": "小马宝莉", "ID": 9, "Stock": "abc" }];
json.push({ "Name": "海绵宝宝", "ID": 8, "Stock": "xyz" })
var jsonstr = JSON.stringify(json);
$('#json').val(jsonstr);
//alert(jsonstr);
</script>
后台:
[HttpPost]
public ActionResult AjaxPager(string json)
{
JavaScriptSerializer js = new JavaScriptSerializer();
//JsonClass jsonClass = (JsonClass)js.Deserialize(json, typeof(JsonClass)); ;
//var test = js.Deserialize(json, typeof(JsonClass));
// 如果是一维数组的json用这个
// JsonClass jc = js.Deserialize<JsonClass>(json);
// 把多维数组转换成List泛型。
List<JsonClass> jc = js.Deserialize<List<JsonClass>>(json);
return View();
}
}
public class JsonClass
{
public string Name { get; set; }
public int ID { get; set; }
public string Stock { get; set; }
}
这样就可以方便处理了。
记录一下。备用