Yes, they work together fine
They're both frameworks libraries, so you can pick and choose which pieces you want out of both. For example, I like to use Prism's NotificationObject
(ViewModelBase), but MVVM Light's Messenger
(event system for communication between view models).
Sometimes I'll even use both Prism's DelegateCommand
and MVVM Light's RelayCommand
in a project, even though they both are for the same thing (the main difference between the two is you have to manually raise the CanExecuteChanged()
on DelegateCommand
, whereess a RelayCommand
does that automatically and sometimes more often then necessary)