Introduzione a progetti e soluzioni
In questa esercitazione viene illustrato cosa significa creare una soluzione e un progetto in Visual Studio. Una soluzione è un contenitore per organizzare uno o più progetti di codice correlati, ad esempio un progetto di libreria di classi e un progetto di test corrispondente. Si crea un riferimento da un progetto a un altro in una soluzione. Questa esercitazione descrive anche le proprietà di un progetto e alcuni dei file che può contenere.
Come esercizio per comprendere il concetto di progetto, si crea una soluzione e un progetto da zero. Di solito si usano i modelli di progetto di Visual Studio per creare nuovi progetti.
In questa esercitazione si apprenderà come:
- Aggiungere un elemento al progetto
- Aggiungere un secondo progetto
- Aggiungere un riferimento al progetto
- Aggiungere il codice di test
- Visualizzare le proprietà del progetto
Prerequisiti
- Se non hai Visual Studio 2019, vai a download di Visual Studio per installarlo gratuitamente.
- Se non si dispone di Visual Studio, vai a Visual Studio download per installarlo gratuitamente.
Soluzioni e progetti
In Visual Studio, una soluzione non è una risposta . Una soluzione è semplicemente un contenitore usato da Visual Studio per organizzare uno o più progetti correlati. Quando si apre una soluzione, Visual Studio carica automaticamente tutti i progetti contenuti nella soluzione.
Nota
Lo sviluppo di app in Visual Studio non richiede soluzioni e progetti. È sufficiente aprire una cartella contenente codice e avviare la codifica, la compilazione e il debug. Ad esempio, un repository gitHub clonato potrebbe non contenere progetti e soluzioni di Visual Studio. Per altre informazioni, vedere Sviluppare codice in Visual Studio senza progetti o soluzioni.
Creare una soluzione
Iniziare l'esplorazione creando una soluzione vuota. Dopo aver appreso Visual Studio, è probabile che non si creino spesso soluzioni vuote. Quando si crea un nuovo progetto, Visual Studio crea automaticamente una soluzione per il progetto, a meno che non sia già aperta una soluzione.
Apri Visual Studio.
Nella finestra iniziale selezionare Crea un nuovo progetto.
Nella pagina Crea un nuovo progetto, immettere soluzione vuota nella casella di ricerca, selezionare il modello Soluzione Vuota e quindi selezionare Avanti.
Consiglio
Se sono installati diversi carichi di lavoro, il modello soluzione vuota potrebbe non essere visualizzato nella parte superiore dell'elenco dei risultati della ricerca. Prova a scorrere fino alla sezione Altri risultati in base alla tua ricerca dell'elenco. Dovrebbe apparire lì.
Denominare la soluzione QuickSolutione quindi selezionare Crea.
Una soluzione viene visualizzata in Esplora soluzioni sul lato destro della finestra di Visual Studio. Probabilmente utilizzerai spesso Esplora soluzioni per navigare il contenuto dei tuoi progetti.
Aprire Visual Studio e nella finestra iniziale selezionare Crea un nuovo progetto.
Nella pagina Crea un nuovo progetto, digitare soluzione vuota nella casella di ricerca, selezionare il modello Soluzione Vuota e quindi selezionare Avanti.
Consiglio
Se sono installati diversi carichi di lavoro, il modello soluzione vuota potrebbe non essere visualizzato nella parte superiore dell'elenco dei risultati della ricerca. Prova a scorrere altri risultati basati sulla tua ricerca per trovare il template.
Nella pagina Configura il tuo nuovo progetto, nominare la soluzione QuickSolution, e quindi selezionare Crea.
La soluzione QuickSolution appare in Esplora Soluzioni sul lato destro della finestra di Visual Studio. Utilizzerai spesso Esplora soluzioni per navigare il contenuto dei tuoi progetti.
Aggiungere un progetto
Aggiungere ora il primo progetto alla soluzione. Iniziare con un progetto vuoto e aggiungere gli elementi necessari.
In Esplora soluzioni fare clic con il pulsante destro del mouse su soluzione 'QuickSolution'. Nel menu di scelta rapida, seleziona Aggiungi>Nuovo progetto.
Verrà visualizzata una finestra di dialogo che indica Aggiungi un nuovo progetto.
Immettere il testo vuoto nella casella di ricerca nella parte superiore e quindi selezionare C# in Lingua.
Selezionare il modello Progetto vuoto (.NET Framework) e quindi selezionare Avanti.
Denominare il progetto QuickDate, quindi selezionare Crea.
Sotto la soluzione viene visualizzato un progetto denominato QuickDate in Esplora soluzioni . Attualmente contiene un singolo file denominato App.config.
Nota
Se il Progetto vuoto (.NET Framework) modello non viene visualizzato, è necessario installare il carico di lavoro sviluppo di desktop .NET di Visual Studio. Visual Studio usa l'installazione basata sul carico di lavoro per installare solo i componenti necessari per il tipo di sviluppo.
Un modo semplice per installare un nuovo carico di lavoro quando si crea un nuovo progetto è cliccare sul link Installa altri strumenti e funzionalità sotto il testo Non riesci a trovare quello che cerchi?. Dopo l'avvio del programma di installazione di Visual Studio, selezionare il carico di lavoro sviluppo desktop di .NET e quindi il pulsante Modifica .
In Esplora soluzioni fare clic con il pulsante destro del mouse su soluzione 'QuickSolution'. Nel menu di scelta rapida, seleziona Aggiungi>Nuovo progetto.
Nella pagina Aggiungi un nuovo progetto digitare vuota nella casella di ricerca nella parte superiore, e selezionare C# in Tutte le lingue.
Selezionare il modello Progetto vuoto C# (.NET Framework) e quindi selezionare Avanti .
Nota
Visual Studio usa l'installazione basata sul carico di lavoro per installare solo i componenti necessari per il tipo di sviluppo. Se non vedi il modello di progetto vuoto (.NET Framework), installa il carico di lavoro di sviluppo per desktop .NET di Visual Studio.
Un modo semplice per installare un nuovo carico di lavoro quando si crea un nuovo progetto consiste nel selezionare il collegamento Installa altri strumenti e funzionalità sotto il testo Non trovare quello che si sta cercando?. Nel programma di installazione di Visual Studio, selezionare il carico di lavoro sviluppo di applicazioni desktop .NET e quindi selezionare Modifica.
Nella pagina Configura il nuovo progetto assegnare al progetto il nome QuickDatee quindi selezionare Crea.
Il progetto QuickDate appare sotto la soluzione in Esplora soluzioni. Il progetto contiene un nodo Riferimenti e un singolo file denominato App.config.
Aggiungere un elemento al progetto
Aggiungi un file di codice al progetto vuoto.
In Esplora soluzioni, fare clic con il pulsante destro del mouse sul progetto QuickDate. Dal menu di scelta rapida selezionare Aggiungi>Nuovo elemento.
Verrà visualizzata la finestra di dialogo Aggiungi nuovo elemento . Selezionare Mostra tutti i modelli se viene visualizzata la finestra di dialogo in visualizzazione compatta.
Espandere Elementi Visual C#, e quindi selezionare Codice. Nel riquadro centrale selezionare il modello di elemento classe. In Nome, digitare Calendarioe quindi selezionare Aggiungi.
Visual Studio aggiunge un file denominato Calendar.cs al progetto. Il
.cs
alla fine è l'estensione di file per i file di codice C#. Il file Calendar.cs viene visualizzato nella gerarchia del progetto visivo Esplora soluzioni e il file viene aperto nell'editor.Sostituire il contenuto del file Calendar.cs con il codice seguente:
using System; namespace QuickDate { internal class Calendar { static void Main(string[] args) { DateTime now = GetCurrentDate(); Console.WriteLine($"Today's date is {now}"); Console.ReadLine(); } internal static DateTime GetCurrentDate() { return DateTime.Now.Date; } } }
Non è necessario comprendere ancora tutto ciò che fa il codice. Eseguire l'app premendo CTRL+F5. L'app stampa la data odierna nella console o nella finestra di uscita standard. Chiudere quindi la finestra della console.
Aggiungere un secondo progetto
Le soluzioni in genere contengono più progetti e questi progetti spesso si fanno riferimento l'uno all'altro. Alcuni progetti in una soluzione potrebbero essere librerie di classi, alcune potrebbero essere applicazioni eseguibili e alcuni potrebbero essere progetti di unit test o siti Web.
Per aggiungere un progetto di unit test alla soluzione, iniziare da un modello di progetto in modo da non dover aggiungere un altro file di codice al progetto.
In Esplora soluzioni fare clic con il pulsante destro del mouse su soluzione 'QuickSolution'. Dal menu di scelta rapida, seleziona Aggiungi>Nuovo progetto.
Nella finestra di dialogo Aggiungi un nuovo progetto, immettere il testo unit test nella casella di ricerca in alto e quindi selezionare C# sotto Linguaggio.
Selezionare il modello di progetto progetto unit test per .NET Core e quindi selezionare Avanti.
Nota
A partire da Visual Studio 2019 versione 16.9, il nome del modello di progetto MSTest è cambiato da MSTest Unit Test Project (.NET Core) a Progetto Unit Test. Diversi passaggi della creazione del progetto sono stati modificati in questo aggiornamento.
Denominare il progetto QuickTeste quindi selezionare Avanti.
Scegliere il framework di destinazione consigliato (.NET Core 3.1) o .NET 5 e quindi scegliere Crea.
Viene aggiunto un secondo progetto a Esplora soluzionie viene aperto un file denominato UnitTest1.cs nell'editor.
In Esplora soluzioni fare clic con il pulsante destro del mouse su soluzione 'QuickSolution'. Dal menu di scelta rapida, seleziona Aggiungi>Nuovo progetto.
Nella finestra di dialogo Aggiungi un nuovo progetto, digitare unit test nella casella di ricerca nella parte superiore e quindi selezionare C# sotto Tutti i linguaggi.
Selezionare il modello di progetto Unit Test Project (.NET Framework) C#, e quindi selezionare Avanti.
Nella pagina Configura il nuovo progetto assegnare al progetto il nome QuickTeste quindi selezionare Crea.
Visual Studio aggiunge il progetto QuickTest a Esplora soluzioni e il file UnitTest1.cs viene aperto nell'editor.
Aggiungere un riferimento al progetto
Per utilizzare il nuovo progetto di unit test per testare il metodo nel progetto QuickDate, è necessario aggiungere un riferimento a QuickDate al progetto QuickTest. L'aggiunta del riferimento crea una dipendenza di compilazione tra i due progetti. Quando si compila la soluzione, QuickDate viene compilato prima di QuickTest.
Fare clic con il pulsante destro del mouse sul nodo dipendenze nel progetto QuickTest. Dal menu di scelta rapida selezionare Aggiungi riferimento al progetto.
Verrà visualizzata la finestra di dialogo gestione riferimenti.
Nel riquadro sinistro espandere Progettie quindi selezionare Soluzione. Nel riquadro centrale selezionare la casella di controllo accanto a QuickDate e quindi selezionare OK.
Viene aggiunto un riferimento al progetto QuickDate.
In Esplora soluzioni, fare clic con il pulsante destro del mouse sul nodo Riferimenti del progetto QuickTest. Dal menu di scelta rapida seleziona Aggiungi riferimento.
Nella finestra di dialogo Gestione Riferimenti, selezionare Progetti. Nel riquadro centrale selezionare la casella di controllo accanto a QuickDate e quindi selezionare OK.
Compare nel progetto QuickTest un riferimento al progetto QuickDate in Esplora Soluzioni .
Aggiungere il codice di test
Aggiungere ora il codice di test al file di codice di test C#. Sostituire il contenuto di UnitTest1.cs con il codice seguente:
using System; using Microsoft.VisualStudio.TestTools.UnitTesting; namespace QuickTest { [TestClass] public class UnitTest1 { [TestMethod] public void TestGetCurrentDate() { Assert.AreEqual(DateTime.Now.Date, QuickDate.Calendar.GetCurrentDate()); } } }
Sotto parte del codice compare una sottolineatura ondulata rossa. È possibile correggere questo errore rendendo il progetto di test un assembly friend al progetto QuickDate.
Nel file Calendar.cs aggiungere i seguenti e InternalsVisibleToAttribute attributo using all'inizio del file per risolvere l'errore nel progetto di test.
using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("QuickTest")]
Il codice Calendar.cs dovrebbe essere simile allo screenshot seguente:
Eseguire il test unitario
Per verificare che lo unit test funzioni, nella barra dei menu scegliere Test>Esegui tutti i test. La finestra Test Explorer si apre e dovresti vedere che il test TestGetCurrentDate viene superato.
Consiglio
È anche possibile aprire esplora test scegliendo >Esplora test dalla barra dei menu.
Proprietà del progetto
La riga nel file Calendar.cs che contiene l'attributo InternalsVisibleToAttribute fa riferimento al nome dell'assembly o al nome file del progetto QuickTest. Il nome dell'assembly potrebbe non essere sempre uguale al nome del progetto. Per trovare il nome dell'assembly di un progetto, usare le proprietà del progetto. Le pagine delle proprietà contengono varie impostazioni per il progetto.
In Esplora soluzioni , fare clic con il pulsante destro del mouse sul progetto QuickTest e selezionare Proprietà, o selezionare il progetto e premere ALT+INVIO.
Le pagine delle proprietà per il progetto si aprono nella scheda Applicazione . Il nome dell'assembly del progetto QuickTest è effettivamente QuickTest.
Se si vuole, è possibile modificare il nome qui. Quando si compila il progetto di test, il nome del file binario risultante passa quindi da QuickTest.dll a <NewName>.dll.
Esplora alcune delle altre schede delle pagine delle proprietà del progetto, ad esempio Build e Debug. Queste schede sono diverse per i diversi tipi di progetti.