Dela via


Introduktion till projekt och lösningar

I den här självstudien utforskar du vad det innebär att skapa en lösning och ett projekt i Visual Studio. En lösning är en container för att organisera ett eller flera relaterade kodprojekt, till exempel ett klassbiblioteksprojekt och ett motsvarande testprojekt. Du skapar en referens från ett projekt till ett annat i en lösning. I den här handledningen beskrivs också egenskaperna hos ett projekt och några av de filer som det kan innehålla.

Som en övning för att förstå begreppet projekt skapar du en lösning och ett projekt från grunden. Vanligtvis använder du Visual Studio-projekt mallar för att skapa nya projekt.

I den här handledningen lär du dig:

  • Lägga till ett objekt i projektet
  • Lägga till ett andra projekt
  • Lägga till en projektreferens
  • Lägga till testkod
  • Visa projektegenskaper

Förutsättningar

Lösningar och projekt

I Visual Studio är en lösning inte ett svar. En lösning är helt enkelt en container som Visual Studio använder för att organisera ett eller flera relaterade projekt. När du öppnar en lösning läser Visual Studio automatiskt in alla projekt som lösningen innehåller.

Not

Att utveckla appar i Visual Studio kräver inte lösningar och projekt. Du kan bara öppna en mapp som innehåller kod och börja koda, skapa och felsöka. En klonad GitHub- lagringsplats kanske inte innehåller Visual Studio-projekt och lösningar. Mer information finns i Utveckla kod i Visual Studio utan projekt eller lösningar.

Skapa en lösning

Starta utforskningen genom att skapa en tom lösning. När du har lärt känna Visual Studio kommer du förmodligen inte att skapa tomma lösningar ofta. När du skapar ett nytt projekt skapar Visual Studio automatiskt en lösning för projektet om inte en lösning redan är öppen.

  1. Öppna Visual Studio.

  2. I startfönstret väljer du Skapa ett nytt projekt.

  3. På sidan Skapa ett nytt projekt anger du tom lösning i sökrutan, väljer mallen Tom lösning och väljer sedan Nästa.

    Skärmbild som visar en mall för tom lösning som valts i Visual Studio 2019.

    Tips

    Om du har installerat flera arbetslaster kanske mallen Tom lösning inte visas överst i listan med sökresultat. Prova att rulla till avsnittet Andra resultat baserat på din sökning i listan. Det bör visas där.

  4. Ge lösningen namnet QuickSolutionoch välj sedan Skapa.

    En lösning visas i Solution Explorer till höger i Visual Studio-fönstret. Du använder förmodligen Solution Explorer ofta för att bläddra bland innehållet i dina projekt.

  1. Öppna Visual Studio och välj Skapa ett nytt projekti startfönstret.

  2. På sidan Skapa ett nytt projekt skriver du tom lösning i sökrutan, väljer mallen Tom lösning och väljer sedan Nästa.

    Skärmbild som visar en tom lösningsmall som valts i Visual Studio.

    Tips

    Om du har flera installerade workloads kanske mallen Blank Solution inte visas överst i listan med sökresultat. Prova att bläddra igenom Andra resultat baserat på din sökning för att hitta mallen.

  3. På sidan Konfigurera ditt nya projekt namnger du lösningen QuickSolutionoch väljer sedan Skapa.

    Lösningen QuickSolution visas i Solution Explorer till höger i Visual Studio-fönstret. Du använder ofta Solution Explorer för att bläddra i innehållet i dina projekt.

Lägga till ett projekt

Lägg nu till ditt första projekt i lösningen. Börja med ett tomt projekt och lägg till de objekt du behöver.

  1. I Solution Explorerhögerklickar du på lösning "QuickSolution". I snabbmenyn väljer du Lägg till>Nytt projekt.

    En dialogruta öppnas med texten Lägg till ett nytt projekt.

  2. Ange texten tom i sökrutan längst upp och välj sedan C# under Language.

  3. Välj mallen Empty Project (.NET Framework) och välj sedan Nästa.

  4. Ge projektet namnet QuickDateoch välj sedan Skapa.

    Ett projekt med namnet QuickDate visas under lösningen i Solution Explorer. För närvarande innehåller den en enda fil med namnet App.config.

    Notera

    Om du inte ser mallen Empty Project (.NET Framework) måste du installera arbetsbelastningen .NET Desktop Development för Visual Studio. Visual Studio använder arbetsbelastningsbaserad installation för att endast installera de komponenter du behöver för den typ av utveckling du gör.

    Ett enkelt sätt att installera en ny arbetsbelastning när du skapar ett nytt projekt är att välja länken Installera fler verktyg och funktioner under texten Hittar du inte det du letar efter?. När Visual Studio Installer har lanserats väljer du arbetsbelastningen .NET-skrivbordsutveckling och sedan knappen Ändra.

    Skärmbild som visar länken Öppna Visual Studio Installer.

  1. I Solution Explorerhögerklickar du på lösning "QuickSolution". I snabbmenyn väljer du Lägg till>Nytt projekt.

  2. På sidan Lägg till ett nytt projekt skriver du tom i sökrutan längst upp och väljer C# under Alla språk.

  3. Välj mallen C# Empty Project (.NET Framework) och välj sedan Nästa.

    Notera

    Visual Studio använder arbetsbelastningsbaserad installation för att endast installera de komponenter du behöver för den typ av utveckling du gör. Om du inte ser mallen Empty Project (.NET Framework), installera .NET-skrivbordsutveckling Visual Studio-arbetsbelastningen.

    Ett enkelt sätt att installera en ny arbetsbelastning när du skapar ett nytt projekt är att välja länken Installera fler verktyg och funktioner under texten Hittar du inte det du letar efter?. I Visual Studio Installer väljer du arbetsbelastningen .NET-skrivbordsutveckling och väljer sedan Ändra.

    Skärmbild som visar länken

  4. På sidan Konfigurera ditt nya projekt namnger du projektet QuickDateoch väljer sedan Skapa.

    Projektet QuickDate visas under lösningen i Solution Explorer. Projektet innehåller en Referenser nod och en enda fil med namnet App.config.

Lägga till ett objekt i projektet

Lägg till en kodfil i ditt tomma projekt.

  1. I Solution Explorerhögerklickar du på projektet QuickDate. På snabbmenyn väljer du Lägg till>Nytt objekt.

    Dialogrutan Lägg till nytt objekt öppnas. Välj Visa alla mallar om dialogrutan öppnas i kompakt vy.

  2. Expandera Visual C#-objektoch välj sedan Code. I mittenfönstret väljer du mallen Class item. Under Namnskriver du Kalenderoch väljer sedan Lägg till.

    Visual Studio lägger till en fil med namnet Calendar.cs i projektet. Den .cs i slutet är filnamnstillägget för C#-kodfiler. Filen Calendar.cs visas i Solution Explorer visuella projekthierarkin och filen öppnas i redigeraren.

  3. Ersätt innehållet i Calendar.cs-filen med följande kod:

    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;
            }
        }
    }
    

    Du behöver inte förstå allt som koden gör än. Kör appen genom att trycka på Ctrl+F5. Appen skriver ut dagens datum till -konsolen, eller standardutdatafönstret. Stäng sedan konsolfönstret.

Lägga till ett andra projekt

Lösningar innehåller ofta fler än ett projekt, och dessa projekt refererar ofta till varandra. Vissa projekt i en lösning kan vara klassbibliotek, vissa kan vara körbara program och vissa kan vara enhetstestprojekt eller webbplatser.

Om du vill lägga till ett enhetstestprojekt i lösningen börjar du från en projektmall så att du inte behöver lägga till någon annan kodfil i projektet.

  1. I Solution Explorerhögerklickar du på lösning "QuickSolution". På snabbmenyn väljer du Lägg till>Nytt projekt.

  2. I dialogrutan Lägg till ett nytt projekt anger du texten enhetstest i sökrutan längst upp och väljer sedan C# under Language.

  3. Välj projektmallen Unit Test Project för .NET Core och välj sedan Nästa.

    Not

    Från och med Visual Studio 2019 version 16.9 ändrades namnet på MSTest-projektmallen från MSTest Unit Test Project (.NET Core) till Unit Test Project. Flera steg i projektets skapande ändrades i den här uppdateringen.

  4. Ge projektet namnet QuickTestoch välj sedan Nästa.

  5. Välj antingen det rekommenderade målramverket (.NET Core 3.1) eller .NET 5 och välj sedan Skapa.

    Ett andra projekt läggs till i Solution Exploreroch en fil med namnet UnitTest1.cs öppnas i redigeraren.

    Skärmbild som visar Solution Explorer med två projekt.

  1. I Solution Explorerhögerklickar du på lösning "QuickSolution". På snabbmenyn väljer du Lägg till>Nytt projekt.

  2. I dialogrutan Lägg till ett nytt projekt skriver du enhetstest i sökrutan längst upp och väljer sedan C# under Alla språk.

  3. Välj projektmallen C# Unit Test Project (.NET Framework) och välj sedan Nästa.

  4. På sidan Konfigurera ditt nya projekt namnger du projektet QuickTestoch väljer sedan Skapa.

    Visual Studio lägger till QuickTest-projektet i Solution Exploreroch filen UnitTest1.cs öppnas i redigeraren.

    Skärmbild som visar Solution Explorer med två projekt.

Lägga till en projektreferens

Om du vill använda det nya enhetstestprojektet för att testa din metod i projektet QuickDate måste du lägga till en referens till QuickDate i projektet QuickTest. Om du lägger till referensen skapas ett build-beroende mellan de två projekten. När du bygger lösningen byggs QuickDate före QuickTest.

  1. Högerklicka på noden Beroenden i projektet QuickTest. På snabbmenyn väljer du Lägg till projektreferens.

    Dialogrutan Reference Manager öppnas.

  2. Expandera Projectsi den vänstra rutan och välj sedan Solution. I det mellersta fönstret markerar du kryssrutan bredvid QuickDateoch väljer sedan OK.

    En referens till projektet QuickDate läggs till.

    Skärmbild av Solution Explorer som visar en projektreferens i Visual Studio 2019.

  1. I Solution Explorerhögerklickar du på noden Referenser i projektet QuickTest. På snabbmenyn väljer du Lägg till referens.

  2. I dialogrutan Reference Manager väljer du Projects. I det mellersta fönstret markerar du kryssrutan bredvid QuickDateoch väljer sedan OK.

    En referens till projektet QuickDate visas under projektet QuickTest i Solution Explorer.

    Skärmbild av Solution Explorer som visar en projektreferens.

Lägga till testkod

  1. Lägg nu till testkod i C#-testkodfilen. Ersätt innehållet i UnitTest1.cs med följande kod:

    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());
            }
        }
    }
    

    En röd vågig linje visas under en del av koden. Du kan åtgärda det här felet genom att göra testprojektet till en vänsammansättning till projektet QuickDate.

  2. I Calendar.cs-filen lägger du till följande med hjälp av instruktionen och InternalsVisibleToAttribute-attributet överst i filen för att lösa felet i testprojektet.

    using System.Runtime.CompilerServices;
    
    [assembly: InternalsVisibleTo("QuickTest")]
    

    Den Calendar.cs koden bör se ut som den här skärmbilden:

    Skärmbild som visar C Sharp-kod.

    Skärmbild som visar C Sharp-kod.

Kör enhetstestet

Om du vill kontrollera att enhetstestet fungerar går du till menyraden och väljer Test>Kör alla tester. Fönstret Test Explorer öppnas och du kan se att testet TestGetCurrentDate godkänns.

Skärmbild som visar Test Explorer med ett godkänt test.

Skärmbild som visar Test Explorer med ett godkänt test.

Tips

Du kan också öppna Test Explorer genom att välja Test>Test Explorer från menyraden.

Projektegenskaper

Raden i Calendar.cs-filen som innehåller attributet InternalsVisibleToAttribute refererar till sammansättningsnamnet eller filnamnet för projektet QuickTest. Sammansättningsnamnet kanske inte alltid är samma som projektnamnet. Om du vill hitta sammansättningsnamnet för ett projekt använder du projektegenskaperna. Egenskapssidorna innehåller olika inställningar för projektet.

  1. I Solution Explorerhögerklickar du på projektet QuickTest och väljer Egenskapereller väljer projektet och trycker på Alt+Retur.

    Egenskapssidorna för för projektet öppnas på fliken Program. Assembly-namnet för QuickTest-projektet är verkligen QuickTest.

    Om du vill kan du ändra namnet här. När du skapar testprojektet ändras namnet på den resulterande binära filen från QuickTest.dll till <NewName>.dll.

    Skärmbild som visar projektegenskaper.

  2. Utforska några av de andra flikarna på projektets egenskapssidor, till exempel Build och Debug. De här flikarna skiljer sig åt för olika typer av projekt.