Assumendo un sistema di .NET 4.0 e .NET 4.5:
Come indicato nel marcgravell's blog collegate da sehe
4,5 è un in-place over-the-top installare sulla parte superiore del 4.0, nel GAC; dopo aver installato 4.5, 4.0 viene eseguito con i 4,5 assemblee
Poi chiama Assembly.Load da un codice .NET mira 4.0 (compilato da un compilatore 4.0), sarà effettivamente eseguito in usando l'implementazione 4.5 quadro, così ho non vedo alcun motivo per cui non possa caricare un assembly 4.5.
note di margravell che i problemi si verificano quando si tenta di eseguire il codice compilato .NET 4.5 su un sistema con solo 4.0 installato, in quanto l'implementazione del ritorno rendimento/interruzione iteratori causa un riferimento al metodo mancante. Ma questo non dovrebbe influire su di te.
Ti consigliamo di leggere questo: http://marcgravell.blogspot.nl/2012/09/iterator-blocks-missing-methods-and-net.html too !! – sehe
perché non modificare le impostazioni di generazione sugli altri progetti per utilizzare .NET4.5? –
@ShaunWilde A volte questo non è possibile. Potresti avere più team o applicazioni in un'azienda, uno con .NET 4.5, uno che utilizza .NET 4.0. In un mondo ideale, questo non accade, ma nel mondo reale, spesso accade. A volte è necessario interoperare i componenti tra i due. – Nuzzolilo