Supponiamo che…
State sviluppando un’applicazione Desktop con WPF.
State utilizzando il pattern MVVM.
State usando MEFedMVVM (e se non lo state facendo dateci un occhio) per associare i ViewModel alle View e per disaccoppiare (in maniera semplice e veloce) i contratti dei vostri servizi dalle implementazioni.
Quest’ultime stanno su un progetto che non referenziate, e che non volete referenziare, da nessuna parte…quindi MEFedMVVM non è assolutamente in grado di soddisfare la richiesta dell’implementazione di uno di questi servizi.
Come risolviamo questo problema?
Dando un occhio ai sorgenti di MEFedMVVM, si scopre che lui tenta di caricare tutto quello che trova nella cartella Extensions (ovviamente se esiste), posta all’interno della BaseDirectory dell’AppDomain corrente. Per cui possiamo creare questa directory e “ficcarci” dentro il nostro assembly contenente i servizi…ed il gioco è fatto
posted @ giovedì 27 gennaio 2011 15:01