绑定属性或ViewModel?

时间:2013-12-10 12:19:26

标签: model-view-controller bind viewmodel

我正在了解Bind属性,我有疑问。

我可以使用Bind属性来包含/排除将要发布的数据,所以。

使用特定的ViewModel而不是Bind属性会不会更好?

1 个答案:

答案 0 :(得分:0)

考虑一下如果您的实体超时更改会发生什么,那么您可能会强制更改您创建的所有不同的viewModel,而不是使用Include或Exclude。很难维护你的代码。

假设你有这个:

  public class PersonalViewModel
    {           
            private int PersonalID { get; set; }
            public string PersonalName { get; set; }
            public string PersonalFamily { get; set; }  
            public byte? GenderID { get; set; }
            public string PersonalPhone  { get; set;}    
    }

考虑这些:

public string ShowPersonalToAll(
            [Bind(Exclude = "PersonalPhone")]PersonalViewModel newPersonal)
        {...}

OR

   public class PersonalViewModel
        {           
                private int PersonalID { get; set; }
                public string PersonalName { get; set; }
                public string PersonalFamily { get; set; }  
                public byte? GenderID { get; set; }

        }

现在如果保存个人手机变得重要怎么办?如果您为多个操作创建了不同的自定义ViewModel(取决于应用程序的业务)?

然后你必须更改主ViewModel和所有其他Customize ViewModel,而使用Exclude不需要更改ViewModel,不需要更改操作,主ViewModel只是更改。