0

我的用户实体有许多不同的属性来定义用户记录。在创建了默认的脚手架编辑和创建页面之后,我们现在正在尝试对页面实施一些区域,以便可以编辑和更新用户配置文件的相似区域,而无需回发和刷新整个属性列表。

我正在考虑将区域拆分为单独的部分视图,如下所示,然后使用 @Ajax.BeginForm(

    public partial class UserContact : UserBase
    {
        [DataType(DataType.EmailAddress)]
        [StringLength(255)]        
        public string EmailAddress { get; set; }

        [DataType(DataType.PhoneNumber)]
        [StringLength(50)]
        public string PhoneHome { get; set; }
            ...
    }
    public partial class UserAddress : UserBase
    {
        [StringLength(60)]
        public string AddressLine1 { get; set; }

        [StringLength(60)]
        public string AddressLine2 { get; set; }
            ...
    }
    public partial class UserBase
    {
        [Key]
        [Required(ErrorMessage = "User is required")]
        public System.Guid UserId { get; set; }
    }

刚刚发现了binding关键字,我想知道人们使用哪些方法。我想它在网络上的效率不是很高,而且在每次回发整个用户模型的必要验证方面,人们是否将主模型拆分为单独的模型,或者是否可以(甚至建议)使用绑定参数只指定属性的子集?

4

1 回答 1

1

在我看来,确实建议将模型拆分为多个子模型,但是您还需要将您的操作拆分为子操作。每个操作都将“绑定”到该子类,而不是整个 UserBase 类。

如果你只使用一个动作,我认为不可能[动态地]指定要绑定哪些属性,哪些不绑定。

于 2012-10-08T11:03:06.810 回答