私は SQL DB を持っており、それを更新するために WPF UI を実装しています。EF5 を使用して DB からクラスを生成する場合、UI で簡単にバインドできるように、生成されたクラスとプロパティに INotifyPropertyChanged を実装するにはどうすればよいですか? これを達成する簡単な方法はありますか?
ありがとう
私は SQL DB を持っており、それを更新するために WPF UI を実装しています。EF5 を使用して DB からクラスを生成する場合、UI で簡単にバインドできるように、生成されたクラスとプロパティに INotifyPropertyChanged を実装するにはどうすればよいですか? これを達成する簡単な方法はありますか?
ありがとう
WPF の推奨MVVMパターンに従う場合、生成されたクラスをモデルとして扱い、INotifyPropertyChanged を実装する ViewModel ラッパーを作成できます。ViewModel クラスは DB クラスにアクセスし、XAML で UI にバインドできるプロパティを公開します。
あなたのコメントで述べたように、これは定型コードを書くのに多くの作業をもたらす可能性がありますが、それに対処する方法がいくつかあります。いくつかのアイデアについては、この質問を参照してください。
最初はより多くの作業が必要になりますが、MVVM パターンは、中間の書式設定や処理を行う必要がある場合、または UI に影響を与えずにデータベース クラスを変更する必要がある場合、長期的には確実に効果があります。
私は最近同じことをする必要がありましたが、Winforms を使用していました。bde で提案されている MVVM パターンに従わない場合は、t4 テンプレートを変更して、生成されたエンティティに INotifyPropertyChanged を実装できます。
この答えは私を助けました: https://stackoverflow.com/a/12192358/1914530