Asp.net mvc MVC局部视图未提交隐藏字段值

Asp.net mvc MVC局部视图未提交隐藏字段值,asp.net-mvc,asp.net-mvc-5,hidden-field,asp.net-mvc-partialview,Asp.net Mvc,Asp.net Mvc 5,Hidden Field,Asp.net Mvc Partialview,我正在开发一个MVC5Web应用程序。其中一个视图引用了局部视图,如下所示 <div class="row"> <div class="panel-body" id="TimeEntryPartial"> @Html.Partial("_TimeEntryPartial", Model.TimeEntry) </div> </div> 表单中的所有值都在ViewModel中成功传递,所选的EdUserID除外。这始终

我正在开发一个MVC5Web应用程序。其中一个视图引用了局部视图,如下所示

<div class="row">
    <div class="panel-body" id="TimeEntryPartial">
       @Html.Partial("_TimeEntryPartial", Model.TimeEntry)
    </div>
</div>
表单中的所有值都在ViewModel中成功传递,所选的EdUserID除外。这始终是0

我认为这可能与字段被隐藏有关,因此我将其更改为文本框,可以看到其中的值。但是,再次调用HttpPost操作时,ViewModel中不包含属性SelectedUserID的值

有人对如何解决这个问题有什么建议吗


谢谢您的帮助。

检查您的poco。如果字段未正确设置为属性,自动关联将忽略该字段

我也有同样的问题。我已经解决了这个问题,摆脱了片面的观点


一切正常。

如果您得到的是0,那是因为这是隐藏字段上的值,否则如果模型绑定器中字段的标识有任何问题,您应该会收到null。@Bardo抱歉,但您错了。如我在问题中所述,我还用文本框替换了隐藏字段,在用户提交表单之前,我可以看到其中包含的正确值。但在Http Post操作中检索时,仍然值为0。我认为代码看起来不错,我认为我们可能需要看到一些额外的脚手架。主视图中还存在什么?浏览器会看到什么?发送到服务器的帖子是否包含正确的详细信息(请与Fiddler核对)?您能否显示型号
TimeEntry
TimeEntryViewModel
?你的党派观点使用的是哪种模式?谁否决了这个问题,请解释为什么?否决这样一个结构合理的问题似乎很荒谬。
@using (Html.BeginForm("AddTimeEntry", "TimeEntry", FormMethod.Post, new { name = "frm", id = "frm" }))
{

@Html.HiddenFor(m => m.SelectedUserID)

<div id="AddButtons">
    <div class="col-sm-12">
        <input type="submit" id="btnAdd" name="btnAdd" class="btn btn-warning btn-block" value="Add Entry">
    </div>
</div>

}
[HttpPost]
public ActionResult AddTimeEntry(TimeEntryViewModel model)
{
    if(ModelState.IsValid)
    {
        //code here
        int userID = model.SelectedUserID;
    }
}