温馨提示:本文翻译自stackoverflow.com,查看原文请点击:其他 - Jquery Ajax "The parameters dictionary contains a null entry for parameter" error
ajax asp.net-mvc jquery

其他 - jQuery Ajax“参数字典包含参数的空条目”错误

发布于 2020-04-07 10:08:37

我的AJAX通话遇到了问题。

$.ajax({
  url: "/Admin/changeStudentPhoto/",
  type: "POST",
  data: {
    file: file1,
    filename: filename1,
    studentID: studentID1,
    x: x1,
    y: y1,
    w: w1,
    h: h1
  },
  success: function(data) {
    //do Stuff
  },
  error: function() {}
});

它将请求发送到此控制器:

public JsonResult changeStudentPhoto(string file, string filename, int studentID, double x, double y, double w, double h) { 
  // More Stuff 
}

事实是,通过在调用上应用断点,我可以看到参数设置正确,我从控制器收到一个包含错误的错误500:

参数字典包含用于方法的非空类型'System.Double'的参数'h'的空条目

具体参数并不重要,之前h它是studentID

我通常将数据直接放置在URL中,但是这一次我还需要传递base64字符串,这样我就不能将其放置在URL中。

提前致谢。

编辑:添加图片以澄清

调试器

错误

查看更多

提问者
MrNutbutters
被浏览
71
MrNutbutters 2020-01-31 19:12

最初,我将数据转换为Json并创建了一个用于绑定的模型。但是,这实际上并没有起作用,“ h”的值将显示为零。

所以我最终将我的数字四舍五入,然后将它们作为整数传递。那解决了问题。

尽管这不是一个合适的解决方案,因为尽管就我而言,我可以使用整数,但其他人可能需要传递实际的浮点数。