Domanda

Stiamo spostando una soluzione con oltre 20 progetti da .net 2.0 a 3.5 e allo stesso tempo passando da Visual Studio 2005 a 2008. Stiamo anche passando da MS Entlib 2.0 a 4.0.

  • C'è qualche motivo per non lasciare che La procedura guidata di Visual Studio converte il file soluzione per noi?
  • 3.5 è completamente compatibile all'indietro 3.5 con 2.0?
  • Entlib 4.0 è pienamente compatibile con le versioni precedenti con 2.0?

Modifica: potrei essere un po 'confuso quando ho scritto questo, si suppone che significhi compatibilità all'indietro; c'è qualcosa che esiste in un progetto 2.0 che non funzionerà / compilerà in 3.5

:)

// W

È stato utile?

Soluzione

Aggiorniamo una soluzione piuttosto grande (oltre 20 progetti) dal 2005 al 2008 ma è stata davvero banale. Aggiornamento del progetto solo sostanzialmente. Il framework sottostante è sempre lo stesso poiché sia ??3.0 / 3.5 che 2.0 condividono lo stesso framework di base.

Come detto sopra, anche se si sta eseguendo l'aggiornamento, non è necessario modificare il riferimento del framework per i progetti, in effetti, per impostazione predefinita, il framework viene lasciato su 2.0 invece di modificarlo su 3.0 / 3.5. Ciò significa che non sarai in grado di sfruttare le funzionalità 3.0 / 3.5 fino a quando non cambi il riferimento (pagina Proprietà progetto, campo Tabella applicazioni " Framework di destinazione ") ma significa anche che sei molto più sicuro che non ci saranno ulteriori problemi di compatibilità (poiché verrà visualizzato un errore durante l'aggiunta del codice 3.0 / 3.5 fino a quando tale riferimento non viene modificato).

Le nuove funzionalità di TFS 2008 non devono essere trascurate, anche se non è necessario aggiornare l'app per poter utilizzare TFS 2008.

La conversione da 1.1 a 2.0 è stata molto più dolorosa ...

Altri suggerimenti

Ho aggiornato diversi progetti da Visual Studio 2005 al 2008 con la procedura guidata e sono andati tutti indolori (beh ... tranne per quella bestia C ++. Ma stai comunque parlando di .NET).

Tieni presente che non è necessario aggiornare la versione .NET. Visual Studio 2008 supporta .NET 2.0, 3.0 e 3.5. Tuttavia, 3.5 è retrocompatibile comunque, poiché si trova sullo stesso CLR ed è, più o meno, solo alcune librerie extra. E il "vecchio" le biblioteche rimangono le stesse.

Non conosco Entlib.

Perché non provi ad eseguire i test unitari? :)

  • Esistono motivi per non consentire alla procedura guidata di Visual Studio di convertire la soluzione per noi?

No.

  • 3.5 è completamente retrocompatibile con 2.0?

No. Ci sono nuove funzionalità in 3.5 che non eseguono il port in modo nativo all'indietro. E (IIRC) ci sono alcuni deprezzamenti che vanno da 2.0 a 3.5.

  • Entlib 4.0 è completamente retrocompatibile con 2.0?

Non credo. 3.5 è elencato come requisito.

Crea un backup, esegui la procedura guidata, guarda cosa succede. Potrebbe volerci un po 'di tempo per un progetto così grosso ma sarai in una posizione in cui puoi dire se costruirà / funzionerà come previsto.

Quando ho eseguito l'aggiornamento da EntLib 2.0 a 4.0 ho osservato la seguente modifica del codice sorgente se si utilizza il blocco dell'applicazione Caching:

  • In 2.0, ottieni un gestore di cache usando CacheManager cache = CacheFactory.GetCacheManager () .
  • In 4.0, devi sostituire CacheManager con ICacheManager altrimenti non verrà compilato.

Inoltre, se si sta scrivendo la propria classe di formattazione delle eccezioni per il blocco Gestione eccezioni:

  • In 2.0, devi definire un costruttore con la firma (TextWriter, Exception) .
  • In 4.0, è obsoleto e devi definire un secondo costruttore con la firma (TextWriter, Exception, Guid) .

Non ci dovrebbero essere cambiamenti di rilievo durante la migrazione da EntLib 3.1 a 4.0:

" Non ci sono modifiche all'API pubblica. Questo era uno degli obiettivi di progettazione di EL4. Ricorda solo che EL4 richiede .NET3.5.

- Grigori "

http://blogs.msdn.com/agile/archive/2008/05/16/enterprise-library-4-0-for-visual-studio-2008-released.aspx

(Grigori è Program Manager per EntLib)

Non sono sicuro di 2.0 a 3.1 però. Se riesco a trovare le persone giuste @ p & amp; p domani aggiornerò questo.

Ade

Controlla questo link su come migrare da .net 2.0 a .net 3.5

http: //codingreview.blogspot .com / 2009/09 / how-to-migrate-tuo-application-from.html

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top