我正在尝试通过boolean
将单个ajax
值传递给server API
。
尽管我通过false
将其设置为true,但API动作被击中,但参数(改组后的)为Ajax
。
api控制器操作是这样的:
[HttpPost("PostShuffled")]
public IActionResult PostShuffled([FromBody]bool shuffled)
{
userSession.Shuffled = shuffled;
return Ok();
}
我的Ajax呼叫是这样:
function ChangeViewMode(el) {
if (el.id == "ViewShuffled") {
$.ajax({
url: "/api/Data/PostShuffled",
contentType: "application/json",
method: "POST",
data: JSON.stringify({ shuffled: true }),
success: function () { alert("ok"); }
});
}
}
我的问题是我做错了什么?
答案 0 :(得分:0)
好的,我已经通过这种方式解决了这个问题:
定义了一个新类:
public class AjaxShuffled
{
public bool shuffled { get; set; }
}
然后我的控制器已更改:
[HttpPost("PostShuffled")]
public IActionResult PostShuffled([FromBody]AjaxShuffled s)
{
userSession.Shuffled = s.shuffled;
return Ok();
}
现在,该值已正确传递。我必须将布尔值封装到一个类中才能使其工作。