Asp.net mvc 4 参数字典包含参数id的空条目

Asp.net mvc 4 参数字典包含参数id的空条目,asp.net-mvc-4,Asp.net Mvc 4,Html表单 function GetStatevalue() { var state_id= $("#ddlstate").val(); var city = $("#txtcity").val(); var datao = new Object(); datao={ state:state_id ,city_name: city } var url = "/city/AddCity"; $.ajax({ url: ur

Html表单

function GetStatevalue() {
    var state_id= $("#ddlstate").val();
    var city = $("#txtcity").val();
    var datao = new Object();
    datao={ state:state_id ,city_name: city  }
    var url = "/city/AddCity";
        $.ajax({
        url: url,
        data:datao ,
        cache: false,
        type: "POST",
        dataType: "json",
        success: function (datao) {

        },
        error: function (reponse) {
            alert("error : " + state_id);
        }
    });

参数字典包含“test_app.Controllers.cityController”中方法“System.Web.Mvc.ActionResult AddCity(Int32,System.String)”的不可为null类型“System.Int32”的参数“id”的null条目。可选参数必须是引用类型、可为null的类型或声明为可选参数。参数名称:参数


查看JqueryCode后,actionresult方法应该如下所示:

[HttpPost]
public ActionResult AddCity(int id,String  city_name)
{
   tbl_city data = new tbl_city();
    data.city_name = city_name;
    data.state_id = id;

    db.tbl_city.Add(data);
    db.SaveChanges();
    return Json(data);
}

参数字典包含“test_app.Controllers.cityController”中方法“System.Web.Mvc.ActionResult AddCity(Int32,System.String)”的不可为null类型“System.Int32”的参数“id”的null条目。可选参数必须是引用类型、可为null的类型或声明为可选参数。参数名称:参数因为您从未发送参数值
id
,仅针对已存储状态id的
州和
城市名称。因此,在控制器方法中,使用参数int-id来存储状态id。数据库中保存的数据仍然显示错误页面。将方法更改为
public ActionResult AddCity(int-state,string-city\u-name)
或将脚本更改为
datao={id:state\u-id,city\u-name:city}
[HttpPost]
public ActionResult AddCity(int id,String  city_name)
{
   tbl_city data = new tbl_city();
    data.city_name = city_name;
    data.state_id = id;

    db.tbl_city.Add(data);
    db.SaveChanges();
    return Json(data);
}
    [HttpPost]
public ActionResult AddCity(int state,String  city_name)
//bcoz{ state(action variablename):state_id ,city_name(action variablename): city  }
{
   tbl_city data = new tbl_city();
    data.city_name = city_name;
    data.state_id = id;

    db.tbl_city.Add(data);
    db.SaveChanges();
    return Json(data);
}