datatables - ASP.NET 5 Controller method can't receive JSON POST, ASP.NET 4 controller method does -


i have been tearing hair out on one. have 2 projects 1 running asp.net 4 , other asp.net 5 rc1

the asp.net 5 project controller received post method input parameters default , not values sent webpage.

to narrow down problem simplified controllers post methods in both projects

[httppost] public jsonresult datahandler(int draw) {     //above draw variable not set } 

and put break point on method catch variable draw. webpage sends json post value of 1 draw parameter. in asp.net 5 values 0 (default) , other parameters send null instead of having values. in 'asp.net 4' correct.

i using jquery datatables , same code used in this asp.net 4 project

var otable = $('#datatab').datatable({     "serverside": true,     "ajax": {         "type": "post",         "url": '/home/datahandler',         "contenttype": 'application/json; charset=utf-8',         'data': function (data) { return data = json.stringify(data); }     },     "dom": 'frtis',     "scrolly": 500,     "scrollx": true,     "scrollcollapse": true,     "scroller": {         loadingindicator: false     },     "processing": true,     "paging": true,     "deferrender": true,     "columns": [    { "data": "name" },    { "data": "city" },    { "data": "postal" },    { "data": "email" },    { "data": "company" },    { "data": "account" },    { "data": "creditcard" }     ],     "order": [0, "asc"] }); 

i used fiddler , compared json sent both project controller , json content posted /home/datahandler both exact same i.e. draw=1.

{"draw":1,"columns":[{"data":"name","name":"","searchable":true,"orderable":true,"search":{"value":"","regex":false}},{"data":"city","name":"","searchable":true,"orderable":true,"search":{"value":"","regex":false}},{"data":"postal","name":"","searchable":true,"orderable":true,"search":{"value":"","regex":false}},{"data":"email","name":"","searchable":true,"orderable":true,"search":{"value":"","regex":false}},{"data":"company","name":"","searchable":true,"orderable":true,"search":{"value":"","regex":false}},{"data":"account","name":"","searchable":true,"orderable":true,"search":{"value":"","regex":false}},{"data":"creditcard","name":"","searchable":true,"orderable":true,"search":{"value":"","regex":false}}],"order":[{"column":0,"dir":"asc"}],"start":0,"length":126,"search":{"value":"","regex":false}}

things tried.

  • i used same html table contents , above code .js file between projects
  • set controller input parameter lowercase e.g. draw
  • compare json post data in fiddler same
  • put breakpoint on post method input variable catch value posted


Comments