C# AJAX不向控制器传递可手持数据

C# AJAX不向控制器传递可手持数据,c#,jquery,ajax,asp.net-mvc,handsontable,C#,Jquery,Ajax,Asp.net Mvc,Handsontable,我试图使用AJAX和jQuery在视图和控制器之间传递数据。 ,, 但是,当我检查服务器端代码(在C#中)时,它表示我的标签变量的值为null [HttpPost] public JsonResult ProcessRequest( string Label1, string Label2, string Label3) { var _Label1 = Label1; var _Label2 = La

我试图使用AJAX和jQuery在视图和控制器之间传递数据。

,, 但是,当我检查服务器端代码(在C#中)时,它表示我的标签变量的值为null

[HttpPost]
    public JsonResult ProcessRequest(
        string Label1,
        string Label2,
        string Label3)
   {
        var _Label1 = Label1;
        var _Label2 = Label2;
        var _Label3 = Label3;

        string message = string.Format("Successful.");
        return Json(new { Success = true, Message = message });
    }

}

错误是否与AJAX命令中的“数据”的格式有关,或者我是否在某个地方遇到了类型错误?任何帮助都将不胜感激

结果表明,我需要创建一个单独的包含数据的变量并将其字符串化两次:一次作为独立调用,另一次在ajax中作为JSON.stringify'{data:varaibleName}。出于某种原因,getDataAtCol()方法确实返回了数据,但是在AJAX中对结果进行字符串化之前,必须对结果进行一次字符串化。谢谢@David和@ZekeDroid的帮助,非常感谢

我认为您不需要使用
JSON.stringify()
,只需将JSON对象本身作为数据传递。@David我尝试删除“JSON.stringify”,但如果没有它,AJAX命令将无法成功执行。它怎么会失败?发出HTTP请求时,发送的数据是什么?我试图发送的数据来自每个getDataAtCol()语句。在中使用.stringify()时,AJAX将成功执行,但服务器端变量为null。如果没有.stringify(),则执行命令的错误条件(显示“失败”的警报)。保留JSON.stringify,您确定null的原因不是因为
userInput.getDataAtCol(1)
返回了什么吗?当您使用console.log记录该值时,会得到什么?
[HttpPost]
    public JsonResult ProcessRequest(
        string Label1,
        string Label2,
        string Label3)
   {
        var _Label1 = Label1;
        var _Label2 = Label2;
        var _Label3 = Label3;

        string message = string.Format("Successful.");
        return Json(new { Success = true, Message = message });
    }

}