Dipende molto da ciò che stai cercando di ottenere e da quanta infrastruttura desideri già in atto, oltre alla facilità con cui puoi trovare campioni che ti possano aiutare. Dichiarerò un interesse qui, perché sono stato attivamente coinvolto in almeno un framework MVVM e ho avuto input in altri attraverso il gruppo WPF Disciples, quindi sono un po 'di parte. Detto questo, ecco qui:
Microsofts MVVM Toolkit - questo è ancora molto nelle fasi alfa. Quando è stato originariamente rilasciato, ci è voluto un po 'di selvaggio dai Discepoli a causa di ciò che non ha fatto. Detto questo, MS sta cercando di rinforzare questo quadro, quindi è uno da guardare - non è ancora pronto.
Fondazione MVVM - ah la versione del framework di Josh Smith. Josh è uno dei papà di MVVM ed è stato un grande sostenitore e insegnante del modello. Di conseguenza, molto di ciò che troverai in altri framework ha le impronte digitali di Josh dappertutto. Questo framework ha lo scopo di fornire le basi di MVVM e non di affrontare alcune delle questioni più esoteriche. Inizialmente questo era destinato solo a WPF, ma persone come Laurent Bugnion e io abbiamo aggiunto funzionalità / progetti che significano che questo sarà anche un framework compatibile con Silverlight.
WAF - nessuna esperienza, quindi non posso commentarlo, temo.
MVVM Light : la versione di Laurent Bugnion è appena stata aggiornata alla versione 2. Questo è un ottimo framework, ma ancora una volta non è destinato a coprire ogni singolo aspetto delle applicazioni MVVM. Dato il background di Laurent, ha un supporto Silverlight e Blendability molto forte.
Aggiornamento Laurent mi ha appena informato che le versioni .NET 3.5 e .NET 4.0 sono compatibili con le funzionalità. Wau per andare a Laurent.
Cinch: l'eccellente framework MVVM solo per WPF di Sacha Barber. Questo copre più terreno rispetto ai framework di cui ho parlato sopra. È un quadro eccellente e sfrutta i concetti trattati nell'eccellente progetto Onyx di Bill Kempf . Onyx è pensato per integrare i framework MVVM e aggiunge funzionalità che in genere è stato difficile per le persone fare in MVVM / WPF. Ancora una volta, originariamente destinato a essere solo WPF, Onyx ha continuato a includere la compatibilità SL - lavoro di cui sono particolarmente orgoglioso di essere stato coinvolto.
Prisma - Ancora una volta, non l'ho mai usato, ma ho sentito molte cose positive al riguardo.
Ocean - Karl Shifflett, Program Manager del team Cider, ha recentemente rilasciato un framework MVPM WPF con funzionalità complete. Ancora una volta, questo è un quadro eccellente e ha molto da consigliare.
La linea di fondo è, scaricare i diversi framework, dare un'occhiata a loro e capire quale si adatta più intuitivamente al modo in cui pensi e alle tue esigenze. Se ritieni di voler supportare Silverlight dalla stessa base di codice, i soli framework WPF dovrebbero essere scontati.