我通过Ajax调用将数据从Js文件传递给控制器,但是控制器端没有接收到数据。 这是我的Ajax调用和Controller函数。 任何帮助都将被批准
var cor1 = ((correct / (correct + incorrect)) * 100);
jQuery.ajax({
url: '/TakeQuiz/Score',
type: 'POST',
contentType: "application/json; charset=utf-8",
data: {
cor: cor1
},
dataType: 'json',
success: function (data) {
alert("data:" + data);
alert(cor1);
$('#completionmessage').html('<h3 class="text-primary">Better luck next time!</h1>');
和我的控制器功能
[AllowAnonymous]
[HttpPost]
public JsonResult Score(int cor = 0)
{
var score = Request["t1"];
return this.Json(cor, JsonRequestBehavior.AllowGet);
}
现在我什么都不做,除了收到价值并发回去。但我收到默认值,即0
答案 0 :(得分:0)
每当我遇到这个问题时,通常会为传递给viewController的信息创建一个dto类
public class JsonResultDto
{
public int cor { get; set; }
}
然后在你的视图控制器中
[AllowAnonymous]
[HttpPost]
public JsonResult Score(JsonResultDto cor)
{
var score = Request["t1"];
return this.Json(cor, JsonRequestBehavior.AllowGet);
}