Jquery 无法在MVC控制器中获取所有ajax参数
创建对控制器的ajax调用时,仅获取第二个参数 阿贾克斯: 控制器:-Jquery 无法在MVC控制器中获取所有ajax参数,jquery,ajax,model-view-controller,Jquery,Ajax,Model View Controller,创建对控制器的ajax调用时,仅获取第二个参数 阿贾克斯: 控制器:- public string AddEmployee(EmpDetail Emp, int? File_ID) { .... } 型号:- public partial class EmpDetail { public int Id { get; set; } public string name { get; set; } public S
public string AddEmployee(EmpDetail Emp, int? File_ID)
{
....
}
型号:-
public partial class EmpDetail
{
public int Id { get; set; }
public string name { get; set; }
public System.DateTime DOB { get; set; }
public string Gender { get; set; }
public string Email { get; set; }
public string Mobile { get; set; }
public string Address { get; set; }
public System.DateTime JoiningDate { get; set; }
public int DepartmentID { get; set; }
public int DesignationID { get; set; }
public Nullable<int> FileId { get; set; }
public Nullable<int> CountryId { get; set; }
public Nullable<int> StateId { get; set; }
}
我知道这是错误的,但这里我只得到第一个参数。试试这个
var empData= JSON.stringify({ EmpDetail: employee, File_ID: File_ID });
还有阿贾克斯
return $http({
method: "post",
url: "/myform/AddEmployee",
data: empData,
dataType: "json"
})
希望有帮助。您可以发送javascript对象而不是字符串
return $http({
method: "post",
url: "/myform/AddEmployee",
data: { EmpDetail: employee, File_ID: File_ID },
dataType: "json"
})
你试过直接提供物品吗?将JSON字符串拼凑在一起是一种非常脆弱的方法,加上将
EmpDetail
作为字符串提供可能会给ModelBinder带来问题<代码>数据:{EmpDetail:employee,File_ID:File_ID},我尝试过这个,也尝试过这个数据:{EmpDetail:JSON.stringify(employee),File_ID:File_ID},但是只有第二个参数是blankEmpDetails,这里是空的,仅获取文件_ID@SunilChaudhry您的employee变量应与控制器中所需的参数同名。我正在传递相同的参数name@SunilChaudhry在控制器中;数据“employee”中的参数名“Emp”。EmpDetails为空,只有获取文件ID才能更新代码并输入员工变量EmpDetails或EmpDetail的值?您发送的变量是EmpDetail
return $http({
method: "post",
url: "/myform/AddEmployee",
data: empData,
dataType: "json"
})
return $http({
method: "post",
url: "/myform/AddEmployee",
data: { EmpDetail: employee, File_ID: File_ID },
dataType: "json"
})