2010-08-28 3 views
7

Come confrontare 2 versioni di un assembly .NET compilato per visualizzare le modifiche tra le 2 versioni? Ho una biblioteca non ben documentata e ho bisogno di sapere cosa è stato cambiato tra la vecchia versione e la nuova versione.Confronta 2 versioni di un assembly .NET?

+0

Hai il codice sorgente? Questo controller della versione del codice sorgente?È sempre più facile lavorare con il codice sorgente anziché con gli assembly compilati. –

+0

No Non ho il codice sorgente, sembra che NDepend faccia il trucco! – user433731

risposta

2

Lo strumento NDepend offre molte funzionalità per gestire il codice .NET diff. Disclaimer: Sono uno degli sviluppatori dello strumento.

Il pannello Ricerca per modifica è dedicato alla ricerca del codice diff. Si noti che:

  • È possibile collegare a qualsiasi strumento NDepend codice diff utilizzato dal menù Confronta versione più vecchia e la più recente del file sorgente
  • Se non si dispone del codice sorgente, solo le assemblee prime, v'è la possibilità Confronti vecchi e nuovi versione smontato con riflettore

NDepend Search by Diff Panel

Avviso anche nello screenshot che viene generato un CQLinq code query per sfogliare il diff.

from m in Application.Methods 
where m.CodeWasChanged() 
select new { m, m.NbLinesOfCode } 

Molti altri predefiniti query e le regole diff sono proposti di default, che vi permetterà di sfogliare il codice .NET diff in modo intelligente.

4

Oltre al riflettore, è possibile utilizzare NDepend per eseguire questa operazione. Si prega di notare che questo è un software commerciale, ma il sito offre una prova gratuita. Ecco un online tutorial su come si può usare NDepend per confrontare due assiemi.

0

Avete il codice o solo i gruppi? Nel caso in cui hai le versioni compilate, un modo è quello di scavare in loro utilizzando il browser degli oggetti in Visual Studio. L'altro approccio potrebbe essere l'uso del disassemblatore come Red Gates Reflector per vedere il codice sorgente.