我的网站上有很多表单,所有表单都截然不同。然而,将有一个由所有人共享的元素 - 一些文本框和一个验证消息,具体取决于输入。
我正在使用asp.net MVC3,为了代码重用,我想把这个共享元素放到一个部分视图中,它将包含在每个表单中。此部分视图必须执行逻辑以检查输入并相应地显示验证消息。
有没有人对如何做到这一点有任何指示?提前谢谢。
答案 0 :(得分:3)
为您的公共视图创建一个ViewModel说
public class CommonViewModel
{
public bool IsValid {get;set;}
public string Message {get;set;}
}
现在说一些其他ViewModel
public class MyOtherViewModel
{
public CommonViewModel CommonViewModel {get;set;}
//Other Properties here
}
现在从MyOtherView.cshtml可以轻松渲染局部视图,从主视图传递值
@model MyOtherViewModel
@Html.Partial("commonView",Model.CommonViewModel)
我希望这可以帮助你开始。
欢呼声
答案 1 :(得分:0)
我正在写一个粗略的代码,请相应更正。 使用Parital View并编写如下代码。
@ Html.BeginForm( 'actionname',控制器)
{
@ Html.TextBox( 'ABC')
}
然后在你的控制器中创建一个方法
[发布]
公共ActionResult ActionName()
{
}
将此部分视图放在任何一个页面中。