2013-12-10 154 views
1

我在了解Bind属性,我有疑问。绑定属性或ViewModel?

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

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

回答

0

想想如果你的实体改变超时会发生什么,那么你可能会强制改变你创建的所有不同的viewModels,而不是使用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和所有其他自定义ViewModel,虽然通过使用排除不需要更改ViewModels,不需要更改操作和主ViewModel只是改变。

相关问题