2009-05-25 15 views
0

私はviewmodelの(部分コード)内のデータ要素を持つことができ、次のいずれかモデルビューViewModelにベストプラクティス

public class PersonViewModel : INotifyPropertyChanged 
{ 
    public string FirstName 
    { 
     get 
     { 
      return firstName; 
     } 

     set 
     { 
      firstName = value; 
      OnPropertyChanged("FirstName"); 
     } 
    } 

    public string LastName 
    { 
     get 
     { 
      return lastName; 
     } 

     set 
     { 
      lastName = value; 
      OnPropertyChanged("LastName"); 
     } 
    } 

} 

または私はビューモデル(パーシャルモード)内部DTOとしてそれらをラップすることができます:

public class PersonDTO : INotifyPropertyChanged 
{ 
    public string FirstName 
    { 
     get { return firstName;} 

     set 
     { 
      firstName = value; 
      OnPropertyChanged("FirstName"); 
     } 
    } 

    public string LastName 
    { 
     get { return lastName; } 

     set 
     { 
      lastName = value; 
      OnPropertyChanged("LastName"); 
     } 
    } 

} 

public class PersonViewModel 
{ 
    public PersonDTO boundToPerson; 
} 

どのアプローチがより良いのでしょうか、なぜですか?

答えて

1

あなたのモデルは基本的にあなたのDTOであり、他の場所では使用されていないと仮定します。私は最初の選択肢に行くだろう。

ソースエンティティからモデルにマップするだけです。 Modelは厳密に型指定されたViewで使用する "平坦な"単純な変換であるため、DTOは不要です。

幸運を祈る!

関連する問題