C# 为什么我的模态表单将空模型发布回控制器

C# 为什么我的模态表单将空模型发布回控制器,c#,jquery,asp.net,asp.net-mvc,twitter-bootstrap,C#,Jquery,Asp.net,Asp.net Mvc,Twitter Bootstrap,我有一个在模态中加载的部分视图。在索引视图中,使用HTML.partial 看起来像这样 <div class="modal fade" id="modalEditDBInfo" role="application" aria-labelledby="modalEditDBInfoLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modalEditDBInfoC

我有一个在模态中加载的部分视图。在索引视图中,使用HTML.partial 看起来像这样

<div class="modal fade" id="modalEditDBInfo" role="application" aria-labelledby="modalEditDBInfoLabel" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modalEditDBInfoContent" style="background-color:white; border-radius:10px; box-shadow:10px;">
            @Html.Partial("_EditDatabaseInfo")
        </div>
    </div>
</div>
在我尝试访问控制器文章中的模型之前,一切都很正常,该模型应该被传递到ActionResult方法中。模型对象为空

对象引用未设置为对象的实例


有人看到我在这里遗漏了什么吗?

您必须在标题中从视图、控制器和部分视图传递模型 口齿不清

请深入阅读粗体文本和中间文本****

**@model Hybridinator.Domain.Entities.Database**

<div class="modal fade" id="modalEditDBInfo" role="application" aria-labelledby="modalEditDBInfoLabel" aria-hidden="true">
<div class="modal-dialog">
    <div class="modalEditDBInfoContent" style="background-color:white; border-radius:10px; box-shadow:10px;">
        @Html.Partial("_EditDatabaseInfo", **Model** )
    </div>
</div>




[HttpPost]
   public ActionResult EditDatabaseInfo(Database database)
   {
       string s = database.database;
       //do other stuff
       // **you have to get the model value in here and pass it to index action**
       return RedirectToAction(**"Index", modelValue**);
   }



 public ActionResult Index(**ModelClass classValue**)
   {
      //pass the model value into index view.
       return View(**"Index", classValue**);
   }
**model Hybridinator.Domain.Entities.Database**
@Html.Partial(“_EditDatabaseInfo”,**模型**)
[HttpPost]
公共操作结果EditDatabaseInfo(数据库)
{
字符串s=database.database;
//做其他事情
//**您必须在此处获取模型值,并将其传递给索引操作**
返回重定向操作(**“索引”,模型值**);
}
公共行动结果索引(**ModelClass类值**)
{
//将模型值传递到索引视图中。
返回视图(**“索引”,类值**);
}

在视图、局部视图和动作中更改模型。创建视图模型并在视图和局部视图中传递,而不是传递实体模型。考虑下面的

@model**DatabaseModel**
@Html.Partial(“_EditDatabaseInfo”,**模型**)

调试时,您能看到传递给控制器的任何值吗?我试图用您的代码创建一些类似的代码,问题在于它工作正常。将其更改为dataemodel,它工作得非常好。非常感谢!
 [HttpPost]
       public ActionResult EditDatabaseInfo(Database database)
       {
           string s = database.database;
           //do other stuff
           return RedirectToAction("Index");
       }
**@model Hybridinator.Domain.Entities.Database**

<div class="modal fade" id="modalEditDBInfo" role="application" aria-labelledby="modalEditDBInfoLabel" aria-hidden="true">
<div class="modal-dialog">
    <div class="modalEditDBInfoContent" style="background-color:white; border-radius:10px; box-shadow:10px;">
        @Html.Partial("_EditDatabaseInfo", **Model** )
    </div>
</div>




[HttpPost]
   public ActionResult EditDatabaseInfo(Database database)
   {
       string s = database.database;
       //do other stuff
       // **you have to get the model value in here and pass it to index action**
       return RedirectToAction(**"Index", modelValue**);
   }



 public ActionResult Index(**ModelClass classValue**)
   {
      //pass the model value into index view.
       return View(**"Index", classValue**);
   }