Jquery hen调用两个部分(同时并排显示两个表单),允许适当的用户决定使用哪个表单

Jquery hen调用两个部分(同时并排显示两个表单),允许适当的用户决定使用哪个表单,jquery,asp.net-mvc-3,Jquery,Asp.net Mvc 3,请注意,被接受的答案是olivehour's,因为我已经决定改变我的方法,但我强烈建议人们(如果有人正在阅读本文)关注Mystere Man在完整验证指南上的链接 第1部分和第2部分是每个人都必须阅读的 如果我没有决定改变我的方法,我会选择Mystere Man的解决方案 谢谢我不确定我是否完全理解。首先,我不需要删除LoginViewModel中我的两个属性上的[Required]属性,对吗?然后,与其将其公开,不如将其虚拟化。然后创建另外两个ViewModels(Employee和Manag

请注意,被接受的答案是olivehour's,因为我已经决定改变我的方法,但我强烈建议人们(如果有人正在阅读本文)关注Mystere Man在完整验证指南上的链接

第1部分和第2部分是每个人都必须阅读的

如果我没有决定改变我的方法,我会选择Mystere Man的解决方案


谢谢

我不确定我是否完全理解。首先,我不需要删除LoginViewModel中我的两个属性上的[Required]属性,对吗?然后,与其将其公开,不如将其虚拟化。然后创建另外两个ViewModels(Employee和Management),覆盖属性并在需要时设置新的[Required]属性。我从未使用过/听说过UpdateModel,也许我需要更熟悉它,以便更好地理解您提出的解决方案,当然,除非您想快速展示一个示例(交叉手指),谢谢YuriyLet我看……我创建了两个不同的视图模型,并为每个视图模型和适当的[属性]定义了适当的字段。当用户单击时,显示相应的表单。但是不要在单/父LoginViewModel中组合这两个ViewModel。好的,但是如何强式键入将承载这两个表单的视图?是否可以基于两种不同的视图模型创建强类型视图?我有点困惑…单击单选按钮是否会触发对另一个方法的调用,从而显示不同的强类型视图?是这样吗?哦,谢谢你对问题1的澄清)我喜欢这个主意,但我有点困惑,点击单选按钮应该如何(或什么)触发?由于点击发生在客户端,并且表单尚未提交,那么定制属性(在服务器端)如何知道选择了什么?也许我需要更多的澄清。@Vlince-创建自定义属性的一部分还包括执行validition客户端所需的javascript。验证必须在这两个地方进行。哇…在阅读了第1部分和第2部分之后,我现在更好地理解并意识到这些链接是多么棒!真的谢谢你!我刚刚发布了一个结论,很可能会在我的另一个功能中使用您的方法。非常感谢!
public class MyModel {
     public bool IsManager { get; set; }

     [ConditionalRequired("IsManager", false)] // validates if IsManager is false
     public int? EmployeeNumber { get; set; }

     [ConditionalRequired("IsManager", true)] // validates if IsManager is True
     public string UserCode { get; set; }
{