Delen via


Overzicht: Een codefragment maken in Visual Studio

U kunt de productiviteit en betrouwbaarheid verhogen door codefragmenten te gebruiken om de tijd die nodig is om terugkerende code te typen te verminderen of voorbeelden te zoeken. Codefragmenten zijn vooraf geverifieerde stukjes code die klaar zijn om in uw toepassing in te voegen.

U kunt uw eigen codefragmenten maken en toevoegen aan de codefragmenten die Visual Studio al bevat. In dit artikel wordt uitgelegd hoe u in slechts een paar stappen een codefragment maakt. U maakt een XML-bestand, vult de juiste elementen in en voegt uw code toe aan het bestand. U kunt eventueel vervangende parameters en projectverwijzingen gebruiken. Vervolgens importeert u het fragment in uw Visual Studio-installatie.

Een codefragment maken

  1. Open Visual Studio en selecteer Doorgaan zonder code op het startscherm .

    Schermopname van het venster Start met de optie Doorgaan zonder code geselecteerd.

  2. Selecteer bestand>nieuw bestand in de menubalk of voer Ctrl+N in.

  3. Selecteer in het dialoogvenster Nieuw bestandhet XML-bestand en selecteer vervolgens Openen.

    Schermopname van het dialoogvenster Nieuw bestand met de optie XML-bestand geselecteerd.

  4. Plak de volgende eenvoudige codefragment in de code-editor.

    <?xml version="1.0" encoding="utf-8"?>
    <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
        <CodeSnippet Format="1.0.0">
            <Header>
                <Title></Title>
            </Header>
            <Snippet>
                <Code Language="">
                    <![CDATA[]]>
                </Code>
            </Snippet>
        </CodeSnippet>
    </CodeSnippets>
    
  5. Voer de titel VierkantswortelTitle in het fragmentelement in.

  6. Vul in het Language kenmerk van het Code element CSharp in voor een C#-fragment of VB voor Visual Basic.

    Aanbeveling

    Als u alle beschikbare taalwaarden wilt zien, raadpleegt u Kenmerken in de schemareferentie voor codefragmenten.

  7. Voeg de volgende codefragment toe aan de CDATA sectie in het Code element.

    Voor C#:

        <![CDATA[double root = Math.Sqrt(16);]]>
    

    Voor Visual Basic:

        <![CDATA[Dim root = Math.Sqrt(16)]]>
    

    Opmerking

    In de CDATA-sectie van een codefragment kunt u niet specificeren hoe u coderegels moet opmaken of laten inspringen. Bij het invoegen wordt de ingevoegde code automatisch opgemaakt door de taalservice.

  8. Sla het fragment ergens op als SquareRoot.snippet.

Het codefragment importeren

  1. Als u het fragment wilt importeren in uw Visual Studio-installatie, selecteert u Extra>Codefragmentenbeheer of drukt u op Ctrl+K, B.

  2. Selecteer in Codefragmentenbeheer de knop Importeren .

  3. Navigeer naar de locatie van het codefragment, selecteer het en selecteer Openen.

  4. Selecteer in het Codefragment Importeren dialoogvenster de map Mijn codefragmenten in het rechterdeelvenster. Selecteer Voltooien en dan OK.

    Het codefragment wordt gekopieerd naar een van de volgende locaties, afhankelijk van de codetaal:

    • %USERPROFILE%\Documents\Visual Studio 2022\CodeFragmenten\Visual C#\Mijn Codefragmenten
    • %USERPROFILE%\Documents\Visual Studio 2022\CodeFragmenten\Visual Basic\Mijn Codefragmenten
    • %USERPROFILE%\Documents\Visual Studio 2019\CodeFragmenten\Visual C#\My Code Snippets
    • %USERPROFILE%\Documents\Visual Studio 2019\CodeFragmenten\Visual Basic\My Code Snippets
  5. Test uw fragment door een C# of Visual Basic-project te openen. Als een codebestand is geopend in de editor, voert u een van de volgende acties uit:

    • Kies op de menubalk van Visual Studio Edit>IntelliSense>Insert Snippet.
    • Klik met de rechtermuisknop en kies Fragment>Fragment invoegen in het contextmenu.
    • Druk vanaf het toetsenbord op Ctrl+K, X.
  6. Open Mijn codefragmenten en dubbelklik op het fragment met de naam Vierkantswortel. Het codefragment wordt ingevoegd in het codebestand.

Beschrijvings- en snelkoppelingsvelden

Het beschrijvingsveld bevat meer informatie over het codefragment wanneer dit wordt weergegeven in Codefragmentbeheer. De snelkoppeling is een tag die u kunt typen om het fragment in te voegen.

  1. Als u het codefragment wilt bewerken, opent u het codefragmentbestand vanaf een van de volgende locaties, afhankelijk van de codetaal:

    • %USERPROFILE%\Documents\Visual Studio 2022\Codefragmenten\Visual C#\Mijn Codefragmenten/SquareRoot.snippet
    • %USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual Basic\My Code Snippets/SquareRoot.snippet
    • %USERPROFILE%\Documents\Visual Studio 2019\CodeFragmenten\Visual C#\Mijn CodeFragmenten/SquareRoot.snippet
    • %USERPROFILE%\Documents\Visual Studio 2019\CodeFragmenten\Visual Basic\Mijn CodeFragmenten/SquareRoot.snippet

    Aanbeveling

    Omdat u het bestand bewerkt in de map waarin Visual Studio het heeft geplaatst, hoeft u het niet opnieuw te importeren in Visual Studio.

  2. Voeg Author, Descriptionen Shortcut elementen toe aan het Header element en vul ze in.

  3. Controleer of het Header element er ongeveer uitziet als in het volgende voorbeeld en sla het bestand op.

    <Header>
        <Title>Square Root</Title>
        <Author>Myself</Author>
        <Description>Calculates the square root of 16.</Description>
        <Shortcut>sqrt</Shortcut>
    </Header>
    
  4. Open Visual Studio Code Snippets Manager en selecteer het codefragment. In het rechterdeelvenster ziet u dat de velden Beschrijving, Auteur en Snelkoppeling nu zijn ingevuld.

    Schermopname van een beschrijving van het codefragment in Codefragmentbeheer.

  5. Als u de snelkoppeling wilt testen, opent u het project dat u eerder hebt gebruikt, typt u sqrt in de editor en drukt u eenmaal op Tab voor Visual Basic of tweemaal voor C#. Het codefragment wordt ingevoegd.

Vervangingsparameters

Mogelijk wilt u dat de gebruiker onderdelen van een codefragment vervangt. U wilt bijvoorbeeld dat de gebruiker een variabelenaam vervangt door een variabele in het huidige project.

U kunt twee typen vervangingen opgeven: letterlijke waarden en objecten.

  • Gebruik het letterlijke element om een vervanging te identificeren voor code die volledig is opgenomen in het fragment dat kan worden aangepast nadat deze in de code is ingevoegd. Bijvoorbeeld een tekenreeks of numerieke waarde.

  • Gebruik het objectelement om een item te identificeren dat het codefragment nodig heeft, maar waarschijnlijk buiten het codefragment is gedefinieerd. Bijvoorbeeld een objectexemplaar of een besturingselement.

U kunt een Literal element in het bestand SquareRoot.snippet gebruiken om gebruikers te helpen het getal eenvoudig te wijzigen om de vierkantswortel van te berekenen.

  1. Wijzig in het bestand SquareRoot.snippet het Snippet element als volgt:

    <Snippet>
      <Code Language="CSharp">
        <![CDATA[double root = Math.Sqrt($Number$);]]>
      </Code>
      <Declarations>
        <Literal>
          <ID>Number</ID>
          <ToolTip>Enter the number you want the square root of.</ToolTip>
          <Default>16</Default>
        </Literal>
      </Declarations>
    </Snippet>
    

    U ziet dat de letterlijke vervanging een id krijgt, Number. U verwijst als volgt naar die id in het codefragment door deze te omringen met $ tekens:

    <![CDATA[double root = Math.Sqrt($Number$);]]>
    
  2. Sla het codefragmentbestand op.

  3. Open een project en voeg het fragment in.

    Het codefragment wordt ingevoegd en de bewerkbare letterlijke tekst is gemarkeerd voor vervanging. Beweeg de muisaanwijzer over de vervangingsparameter om de tooltip voor de waarde te zien.

    Schermopname van de tooltip voor vervangingsparameter van codefragment in Visual Studio.

    Aanbeveling

    Als er meer dan één vervangbare parameter in een fragment staat, kunt u op Tab drukken om van de ene parameter naar de andere te navigeren om de waarden te wijzigen.

Een naamruimte importeren

U kunt een codefragment gebruiken om een using instructie (C#) of Imports instructie (Visual Basic) toe te voegen door het element Import op te geven. Voor .NET Framework-projecten kunt u ook een verwijzing naar het project toevoegen met behulp van het element Verwijzingen.

De volgende XML toont een codefragment dat gebruikmaakt van de methode File.Exists in de System.IO naamruimte en definieert daarom het element voor het Imports importeren van de System.IO naamruimte.

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>File Exists</Title>
      <Shortcut>exists</Shortcut>
    </Header>
    <Snippet>
      <Code Language="CSharp">
        <![CDATA[var exists = File.Exists("C:\\Temp\\Notes.txt");]]>
      </Code>
      <Imports>
        <Import>
          <Namespace>System.IO</Namespace>
        </Import>
      </Imports>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>