提交按钮正在提交但不保存 - MVC

时间:2016-06-27 02:17:58

标签: asp.net-mvc-4

我已经尝试了很多东西来提交提交按钮以提交到数据库。我没有收到任何错误,测试的两个错误消息,一个来自控制器,一个来自视图,不打印让我知道它不起作用。当用户点击提交时,它会呈现并显示相同的按钮 - 设置语句,而不是用户输入的新文本。不确定如何解决或问题出在哪里。

以下是代码:

控制器:

[HttpPost, ValidateAntiForgeryToken]
    public ActionResult Create(TableA Statement)
    {
        var model = new Test.Models.Tables();

        using (var db = new Entities())

        if (ModelState.IsValid)
        {
            TableA tablea = new TableA();
            tablea.Statement = model.Statement;
            db.TablesA.Add(tablea);
            db.SaveChanges();
            return RedirectToAction("Index");
        }
        else
        {
            return Content("Failed");
        }

    }

主要观点:

<td>
     @if (tablea.Statement != null)
     {
     @Html.DisplayFor(modelItem => tablea.Statement)
     <text>|</text>
     @Html.ActionLink("Edit", "Edit", new { id = tablea.ID })
      }
            else
            {

            Html.RenderAction("PopUp");

            var model = new Test.Models.Tables();

            if (model.Statement != null) {
            <text>Save Successful!</text>
                                        }
                                    }
                           </td>

弹出视图:

@using (Html.BeginForm())
{
    @Html.AntiForgeryToken()


    <div class="form-horizontal">
      =
        <hr />
        @Html.ValidationSummary(true)

        <div class="form-group">
            @Html.LabelFor(model => model.Statement, new { @class = "control-label col-md-2" })
            <div class="col-md-10">
                @Html.EditorFor(model => model.Statement)
                @Html.ValidationMessageFor(model => model.Statement)
            </div>
        </div>
        <div class="form-group">
            <div class="col-md-offset-2 col-md-10">
                <input type="submit" value="Save" onsubmit="Create(Statement)" class="btn btn-default">
</div.. etc>

1 个答案:

答案 0 :(得分:0)

弹出视图是局部视图还是什么?,我建议将其转换为局部视图,在控制器中你可以做类似的事情

public ActionResult CreatePartial()
{
var pages = pageRepository.Pages;
return PartialView(pages);
}

并在您的视图中使用

@{Html.RenderAction("Popup", "CreatePartial");}

如果你的部分模型与主视图模型不同,如果不使用:

@Html.RenderPartial("ViewName")