Die Parameter Wörterbuch enthält einen Null-Eintrag für die Parameter-ID
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);
}
});
HTML-Formular
@Html.DropDownListFor(model => model.tbl_state.coutry_id, (SelectList)ViewBag.country_nm, "Select Country", new {@id="coutry_id" , @onchange="GetState(this.value)"})
<select id="ddlstate" name="ddlstate" style="width: 200px" >
@Html.TextBoxFor(model =>model.tbl_city.city_name ,new {@id="txtcity" })
<input type="submit" id="save" value="Add" name="actiong" onclick="GetStatevalue();" />
Regler
[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);
}
Die Parameter Wörterbuch enthält einen Null-Eintrag für den Parameter ‚id 'des nicht nullfähigen Typs' System.Int32 'für die Methode' System.Web.Mvc.ActionRes ' ult AddCity (Int32, System.String) 'in' test_app.Controllers.cityController '. Ein optionaler Parameter muss ein Referenztyp, ein Nullable-Typ oder ein optionaler Parameter sein. Parametername: Parameter
Die Parameter Wörterbuch einen Null-Eintrag für den Parameter ‚id‘ von Nicht-Nullable Types ‚System.Int32‘ enthält für Methode 'System.Web.Mvc.ActionResult AddCity (Int32, System.String)' in 'test_app.Controllers.cityController'. Ein optionaler Parameter muss ein Referenztyp, ein Nullable-Typ oder ein optionaler Parameter sein. Parametername: Parameter – Rics
Weil Sie nie einen Wert des Parameters 'id' senden, nur für' state' und 'city_name' –
in einem Zustand state_id wurde gespeichert. In der Controller-Methode verwenden Sie den Parameter int id, um die state_id zu speichern. – Rics