如何解决查看某个模型的详细信息时,如何验证另一个模型?
| 我正在显示电影模型的详细信息页面,其中包含相关(子元素)Actor模型的列表。 在“演员”列表的底部,我渲染了一个文本框,用于快速插入与当前“电影”相关的新演员,这很好。 但是,如何验证(客户端和服务器)参与者名称的文本框,使其在提交时不为空? 我正在使用Linq2SQL和DataAnnotations:[MetadataType(typeof(ActorValidation))]
partial class Actor
{
}
public class ActorValidation
{
[Required(ErrorMessage = \"You forgot the name.\")]
public string Name{ get; set; }
}
这是“电影详细信息”视图上的表单:
<%
Html.EnableClientValidation();
using (Html.BeginForm(\"NewActor\",\"Movie\"))
{
%>
<%= Html.Hidden(\"MovieId\",Model.Id) %>
<%= Html.TextBox (\"Name\")%>
<%= Html.ValidationMessage(\"Name\") %>
<br />
<input type=\"submit\" value=\"Add\" />
<% } %>
解决方法
一种选择是将\“ new actor \”表单放到一个单独的Partial View中,该视图使用Actor作为其模型,然后调用
Html.RenderPartial
进行渲染。那就是我要做的。
这对AJAX尤其有效,因为您可以验证模型并返回在失败时启用验证方法的Partial View。成功后,您可以返回显示新Actor的局部视图,然后是“ new actor \”表单的新实例。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。