2009-12-16 13 views
5

Eventuali duplicati:
Change the Target Framework for all my projects in a Visual Studio Solutionmodificare il quadro di destinazione per tutti i miei progetti in Visual Studio 2008-3,5

ho un appena convertito un progetto di Visual Studio 2005-2008 a sfruttare le funzionalità di .NET 3.5 Framework. La mia soluzione contiene circa 80 progetti e voglio impostare Target Framework su .NET Framework 3.5 per tutti. C'è un modo per farlo senza entrare manualmente e modificandoli uno a uno in Proprietà -> Applicazione -> Target Framework?

+1

@JimG. Questa domanda è stata posta prima del duplicato che hai citato, quindi quella domanda è più una copia di questa. –

+0

@Paul Hiemstra: hai ragione. L'altra domanda ha una generosità aperta, ma non sono sicuro che una taglia dovrebbe necessariamente legittimare ciò che altrimenti sarebbe un duplicato chiuso. –

risposta

4

Si avrebbe bisogno di modificare tutti i file csproj e cambiare la linea:

<TargetFrameworkVersion>v3.5</TargetFrameworkVersion> 

Si potrebbe scrivere un programma che avrebbe eseguire la scansione dei progetti di cartelle per tutti i file Csproj, leggerli come testo (o forse xml), aggiorna quella riga e poi scriverla di nuovo.

Si potrebbe avere un problema anche se non sono già progetti VS 2008. Quindi convertili prima. E mentre lo fai, probabilmente sarà altrettanto veloce (se non più veloce) aggiornare manualmente la versione del framework di destinazione.

Detto questo, perché non lasciarlo da solo fino a quando non si apportano comunque modifiche al codice del progetto. Dato che il tuo codice funziona ora, e l'unico motivo per cui vuoi aggiornare è utilizzare le nuove funzionalità che dovrai comunque modificare il progetto.

+0

Sì. Ho già trovato tutti i riferimenti al framework precedente nei file .csproj e li ho modificati. Mi stavo solo chiedendo se mi mancasse qualche funzionalità in Studio. Non sembra. Grazie comunque. –

2

In teoria è possibile eseguire una conversione tra i file .csproj prima e dopo aver modificato la versione del framework. .csproj è un file XML, quindi è qualcosa che potresti scrivere un programma per analizzare e modificare.

In pratica, non lo farei, in quanto potrebbero esserci delle sottigliezze che potrebbero mancare. Ad esempio: i progetti di installazione funzionano allo stesso modo? Progetti di distribuzione Web?

Inoltre, supponiamo che richieda un paio di secondi per eseguirli manualmente. Questo richiederà circa due o tre minuti per fare l'intera soluzione. Potrebbe essere più veloce della scrittura del codice ...!

Problemi correlati