0

HomeController.cs で

[HttpPost]
public ActionResult Index(SecurityMappingModel objModel)
{

    //edit code

    if (objModel.Id != Guid.Empty)
    {
        if (ModelState.IsValid)
        {
            mappings = (List<SecurityMappingModel>)Session["Mappings"];
            var objRemove = mappings.FirstOrDefault(m => m.Id == objModel.Id);
            if (objRemove != null)
            {
                mappings.Remove(objRemove);
                mappings.Add(objModel);
                ViewBag.Mappings = mappings;
            }
            Session["Mappings"] = mappings;
return RedirectToAction("Index");
}

objModel 内では、フィールドの 1 つが値 0 を持っています。これはテキストフィールドであるため、値を入れていますが、Controller oject objModel 内では、フィールド値がゼロであることを示しています :( :( なぜ???

4

2 に答える 2

7
if (yourGuid != Guid.Empty)

于 2012-04-19T13:49:06.947 に答える
0

私もこの種のエラーに遭遇しました。

問題の解決策は、Home.cshtml ビューに次のようなコードを配置することです。

@Html.HiddenFor(model => model.Id)
于 2012-05-17T16:11:43.960 に答える