I would like to see how EntityFramework 4.3 (code first), Managed Extensibility Framework, Prism 4.1, MVVM, WPF can be used together in a simple c# project so that I can see how they all work together.
I am particularly interested in DataValidation techniques for this type of solution.
I am using Prism regions and DelegateCommands and CompositeCommands.
I have been having problems making buttons that are bound to Prism DelegateCommands appropriately enabled/disabled when an input error occurs in the UI and is caught during the binding process (i.e. before property changed is called e.g. a user entering 3c in text box for "Age") because this seems to prevent the calls to CanExecuteChanged that would otherwise disable the button.
I would like the solution to show me examples of how to perform
1. UIvalidation (but using a technique on the ViewModel, ie not in the code behind),
2. INotifyDataErrorInfo on the ViewModel, and
3. DataValidation techniques in the DataLayer (entity framework).
I would prefer INotifyPropertyChanged or Prism NotificationObject to be implemented on the ViewModel.
Additional examples of how you might use dataConverters, REGEX or any other recommended techniques for datavalidation would be useful.
As a suggestion: POCOs : Person (with properties of a reasonable variety of types) and Address (with properties of a reasonable variety of types).
A master-details form: master being a list of people, details being a list of addresses for the person selected in the people list.