我有一个Asp.net MVC3页面,它提供了移动设备的详细信息。此页面还包含一个使用Comment模型呈现的注释表单。一个名为Name的字段,即Mobile.Name和Comment.Name在两个模型中都很常见。
在最终输出中,我总是看到Comment.Name文本框填充了Mobile.Name的值。不知道为什么会这样。
可以在下面的链接中看到确切的问题..查看评论标签
修改 注释表单使用部分视图呈现,如下所示:
@using (Ajax.BeginForm("Savecomment", new AjaxOptions() { UpdateTargetId = "FormContainer" , OnSuccess = "$.validator.unobtrusive.parse('form');" }))
{
@Html.HiddenFor(m => m.MobileId)
<div class="row">
<div class="five columns">
<label >Your name:</label>
@Html.TextBox("Name"," ")
@Html.ValidationMessage("Name")
</div>
</div>
答案 0 :(得分:1)
您的问题很可能与渲染部分视图的方式有关。我假设你有一个包含Mobile和Comment的父模型?您正在将评论模型传递给部分视图?因此,局部视图将字段的名称呈现为主要模型。
我建议使用EditorTemplate来渲染Comment和Mobile而不是部分视图。编辑器模板比部分视图更了解它们的上下文。