È possibile fare una soluzione in VS dipende da (cioè includere) un'intera altra soluzione? Ho visto alcune cose su "Solution Folders", ma queste non sembrano essere la stessa cosa ....? Grazie! (A proposito, sto usando VS 2008)Visual Studio: come far dipendere una soluzione da un'altra?
risposta
Non proprio. Dovreste fare uno dei seguenti modi:
- Fai uno script di build che costruisce le soluzioni nell'ordine corretto.
- Soluzione pre-compilazione A e solo riferimento alle uscite binarie create da esso nella soluzione B.
- Creare una terza soluzione contenente tutti i progetti da entrambe le soluzioni.
I primi due elementi sono i più comuni, dove personalmente preferisco il secondo.
Una soluzione è una raccolta di assiemi creati per creare una sorta di eseguibile o dll. Avere una soluzione dipende da un'altra non ha senso. L'assembly di output (eseguibile/dll) dipende dagli assiemi a cui fa riferimento. Se la soluzione dipende da altri assembly, quindi fare riferimento a loro. Puoi aggiungere progetti alla tua soluzione (File> Aggiungi> Progetto esistente) e quindi puoi aggiungere questi progetti al tuo progetto di output.
Non puoi farlo. E perché vorresti?
Basta aggiungere tutti i progetti da cui si dipende (i progetti nell'altra soluzione) alla soluzione.
Quindi utilizzare i riferimenti del progetto (non i riferimenti ai file) tra i progetti.
Voglio dipendere da un'altra soluzione per la quale non ho il controllo. Se tale soluzione viene aggiornata per includere un altro progetto, voglio che venga automaticamente preso in considerazione. –
In tal caso: o Crea uno script che genera automaticamente il file della soluzione. Oppure aggiungi manualmente progetti alla tua soluzione e crea uno script che convalida che tutti i progetti sono nella soluzione. I file di soluzione sono semplici file di testo con una struttura abbastanza semplice. – codeape
Si vorrebbe se l'albero delle dipendenze fosse profondo e complesso, sebbene un meccanismo esterno a VS che assicuri che le DLL dipendenti siano aggiornate e nella posizione corretta risparmierà molto tempo di compilazione se queste DLL sono disponibili in un repository controllato centralmente . –
Date un'occhiata qui: http://blogs.msdn.com/b/habibh/archive/2009/06/24/walkthrough-adding-an-existing-visual-studio-solution-to-another-solution.aspx
In realtà il metodo descritto aggiunge tutti i progetti da un'altra soluzione per la soluzione attuale, non è proprio quello che vogliamo, ma almeno questo consente di risparmiare tempo aggiungendo tutti i progetti manualmente uno per uno .
Questo post è vecchio, ma in questi giorni è possibile riutilizzare facilmente le dipendenze in altre soluzioni creando pacchetti di nuget per tutti. VS 2015 ha incorporato il pacchetto nuget ma è attualmente un candidato alla versione. In Visual Studio 2013 è possibile utilizzare il pacchetto nuget di Nuget.Packaging per consentire la creazione del progetto come pacchetto Nuget.
Quindi è possibile pubblicare nuove versioni dei pacchetti su una condivisione di rete locale e configurarlo come repository in Visual Studio.
Quindi i progetti della vostra altra soluzione possono dipendere da quel pacchetto.
Ad esempio, si supponga di disporre di una DLL di utilità riutilizzabile in una soluzione denominata "Core Framework" e si desidera utilizzare un'utilità in là su un sito Web che si sta creando in una soluzione denominata "XYZEcosystem".
Nella soluzione CoreFramework si crea un pacchetto nuget per il progetto di utilità che viene compilato con la DLL di utilità e include la DLL e il file pdb nel pacchetto.
Quindi lo si pubblica sulla condivisione di rete.
Quindi supponiamo che il pacchetto abbia un ID come "XYZ.Core.Utilities" con una versione 1.0.0.0.
Ora in XYZEcosystem si utilizzerà la console del gestore pacchetti, si imposta il deposito a discesa nel repository e si digita "Install-Package XYZ.Core.Utilities" e verrà installata l'ultima versione di XYZ.Core.Utilities.
Se si apporta una modifica a XYZ.Core.Utilities è possibile eseguire il pacchetto di aggiornamento XYZ.Core.Utilities su XYZEcosystem e verrà prelevata la nuova versione.
- 1. Come far dipendere un progetto da un altro in Visual Studio?
- 2. Soluzione C# Visual Studio in una DLL
- 3. Come creare una soluzione di Visual Studio in modo programmatico?
- 4. Come creare una soluzione di Visual Studio dai file make?
- 5. Come eseguire il downgrade della soluzione da Visual Studio 2010 a Visual Studio 2005?
- 6. minima Visual Studio versione per Visual Studio 2015 soluzione
- 7. Come usare Mercurial da Visual Studio 2010?
- 8. Rinomina configurazioni soluzione di Visual Studio?
- 9. Visual Studio: Esiste una ricerca incrementale per l'intera soluzione?
- 10. Impostazioni di Visual Studio per soluzione/progetto
- 11. Le migliori pratiche che organizzano una soluzione di Visual Studio
- 12. Variabile ambiente percorso soluzione Visual Studio
- 13. Soluzione lenta caricamento in Visual Studio 2008
- 14. Diversi progetti in una soluzione con cmake e visual studio
- 15. Costruire a livello di programmazione una soluzione di Visual Studio?
- 16. Visual Studio 2012 si blocca quando si chiude una soluzione
- 17. Come creare una soluzione di Visual Studio 9.0 da Cygwin e ottenere l'output di build?
- 18. Visual Studio 2008: creazione di una singola DLL da una soluzione con molti progetti
- 19. Visual Studio 2010 "Preparazione Soluzione" dialogo
- 20. Visual Studio 2010 soluzione explorer settings
- 21. oggetti come ordinare dipendeva da dipendere
- 22. Come convertire la soluzione Visual Studio 2010 SP1 in Visual Studio 2012?
- 23. È possibile aggiungere file in una cartella della soluzione generata da CMake in Visual Studio?
- 24. Spostamento di file da una soluzione di Visual Studio a un'altra
- 25. E 'possibile avere l'aggiornamento di Visual Studio da SVN quando apro una soluzione?
- 26. Come far dipendere un modulo da un altro artefatto del modulo?
- 27. Postbuild di Visual Studio - passaggio all'unità di soluzione
- 28. Modello soluzione di Visual Studio - Progetti di controllo origine collegamento
- 29. Definite a livello di soluzione in Visual Studio?
- 30. Apri automaticamente l'ultima soluzione all'avvio di Visual Studio
* sigh * ... OK; Grazie! –
Ma vedi la risposta da net_prog –
Sembra che questo [in realtà] (https://stackoverflow.com/a/826009/712526) [era possibile] (https://msdn.microsoft.com/en-us/library /ee817674.aspx) nel 2009. In ogni caso, spero che sia migliorato nel 2015. – jpaugh