Przewodnik: tworzenie fragmentu kodu w programie Visual Studio

Fragmenty kodu to wstępnie uwierzytelnione fragmenty kodu, które są gotowe do wstawienia do aplikacji. Możesz zwiększyć produktywność i niezawodność, używając fragmentów kodu, aby skrócić czas spędzony na wpisywaniu powtarzalnego kodu lub wyszukiwaniu przykładów.

Możesz utworzyć własne fragmenty kodu i dodać je do fragmentów kodu, które już zawiera program Visual Studio. W tym artykule opisano sposób tworzenia fragmentu kodu w zaledwie kilku krokach. Utworzysz plik XML, wypełnisz odpowiednie elementy i dodasz kod do pliku. Opcjonalnie możesz użyć parametrów zastępczych i odwołań do projektu. Następnie zaimportujesz fragment kodu do instalacji programu Visual Studio.

tworzenie fragmentu kodu

  1. Otwórz program Visual Studio i wybierz pozycję Kontynuuj bez kodu na ekranie startowym.

    Zrzut ekranu przedstawiający okno Start z wybraną opcją

  2. Na pasku menu wybierz pozycję Plik>nowy plik lub naciśnij klawisze Ctrl+N.

  3. W oknie dialogowym Nowy plik wybierz pozycję Plik XML, a następnie wybierz pozycję Otwórz.

    Zrzut ekranu przedstawiający okno dialogowe

  4. Wklej następujący podstawowy szablon fragmentu kodu do edytora kodu.

    <?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. Wprowadź tytuł Pierwiastek kwadratowy w elememencie fragmentu kodu Title .

  6. W atrybucie Language elementu wypełnij ciąg CSharp dla fragmentu Code kodu języka C# lub VB dla języka Visual Basic.

    Napiwek

    Aby wyświetlić wszystkie dostępne wartości języka, zobacz Atrybuty w dokumentacji schematu fragmentów kodu.

  7. Dodaj następujący kod fragmentu kodu do CDATA sekcji wewnątrz Code elementu.

    Dla języka C#:

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

    Dla języka Visual Basic:

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

    Uwaga

    Nie można określić sposobu formatowania lub wcięcia wierszy kodu w CDATA sekcji fragmentu kodu. Po wstawieniu usługa językowa formatuje automatycznie wstawiony kod.

  8. Zapisz fragment kodu w dowolnym miejscu jako fragment SquareRoot.snippet.

Importowanie fragmentu kodu

  1. Aby zaimportować fragment kodu do instalacji programu Visual Studio, wybierz pozycję Narzędzia>Menedżer fragmentów kodu lub naciśnij klawisze Ctrl+K, B.

  2. W Menedżerze fragmentów kodu wybierz przycisk Importuj.

  3. Przejdź do lokalizacji fragmentu kodu, wybierz go i wybierz pozycję Otwórz.

  4. W oknie dialogowym Importowanie fragmentu kodu wybierz folder Moje fragmenty kodu w okienku po prawej stronie. Wybierz pozycję Zakończ, a następnie wybierz pozycję OK.

    Fragment kodu jest kopiowany do jednej z następujących lokalizacji w zależności od języka kodu:

    %USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual C#\My Code Snippets%USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual Basic\My Code Snippets

    %USERPROFILE%\Documents\Visual Studio 2019\Code Snippets\Visual C#\My Code Snippets%USERPROFILE%\Documents\Visual Studio 2019\Code Snippets\Visual Basic\My Code Snippets

  5. Przetestuj fragment kodu, otwierając projekt w języku C# lub Visual Basic. Po otwarciu pliku kodu w edytorze wykonaj jedną z następujących akcji:

    • Na pasku menu programu Visual Studio wybierz pozycję Edytuj>wstaw fragment kodu IntelliSense.>
    • Kliknij prawym przyciskiem myszy i wybierz pozycję Wstaw>wstaw fragment kodu z menu kontekstowego.
    • Na klawiaturze naciśnij klawisze Ctrl+K, X.
  6. Otwórz fragmenty kodu i kliknij dwukrotnie fragment kodu o nazwie Pierwiastek kwadratowy. Kod fragmentu kodu jest wstawiany w pliku kodu.

Pola opisu i skrótu

Pole opisu zawiera więcej informacji o fragmencie kodu podczas wyświetlania w Menedżerze fragmentów kodu. Skrót to tag, który można wpisać, aby wstawić fragment kodu.

  1. Aby edytować fragment kodu, otwórz plik fragmentu kodu z jednej z następujących lokalizacji, w zależności od języka kodu:

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

    Napiwek

    Ponieważ edytujesz plik w katalogu, w którym został umieszczony program Visual Studio, nie musisz ponownie go ponownie portować do programu Visual Studio.

  2. Dodaj Authorelementy , Descriptioni Shortcut do Header elementu i wypełnij je.

  3. Upewnij się, że Header element wygląda podobnie do poniższego przykładu i zapisz plik.

    <Header>
        <Title>Square Root</Title>
        <Author>Myself</Author>
        <Description>Calculates the square root of 16.</Description>
        <Shortcut>sqrt</Shortcut>
    </Header>
    
  4. Otwórz Menedżera fragmentów kodu programu Visual Studio Code i wybierz fragment kodu. W okienku po prawej stronie zwróć uwagę, że pola Opis, Autor i Skrót są teraz wypełnione.

    Opis fragmentu kodu w Menedżerze fragmentów kodu

  5. Aby przetestować skrót, otwórz wcześniej użyty projekt, wpisz sqrt w edytorze i naciśnij klawisz Tab raz dla języka Visual Basic lub dwa razy dla języka C#. Wstawiono kod fragmentu kodu.

Parametry zamienne

Użytkownik może chcieć zastąpić części fragmentu kodu. Możesz na przykład chcieć, aby użytkownik zamienił nazwę zmiennej na nazwę w bieżącym projekcie.

Można podać dwa typy zamian: literały i obiekty.

  • Użyj elementu Literał, aby zidentyfikować zastąpienie kodu w całości zawartego we fragmencie kodu, który można dostosować po wstawieniu do kodu. Na przykład ciąg lub wartość liczbowa.

  • Użyj elementu Object, aby zidentyfikować element, którego wymaga fragment kodu, ale prawdopodobnie jest zdefiniowany poza fragmentem kodu. Na przykład wystąpienie obiektu lub kontrolka.

Możesz użyć Literal elementu w pliku SquareRoot.snippet , aby ułatwić użytkownikom łatwe zmienianie liczby w celu obliczenia pierwiastek kwadratowy.

  1. W pliku SquareRoot.snippet zmodyfikuj element w Snippet następujący sposób:

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

    Zwróć uwagę, że zamiana literału pobiera identyfikator . Number Odwołujesz się do tego identyfikatora we fragmencie kodu, otaczając go znakami $ w następujący sposób:

    <![CDATA[double root = Math.Sqrt($Number$);]]>
    
  2. Zapisz plik fragmentu kodu.

  3. Otwórz projekt i wstaw fragment kodu.

    Wstawiono fragment kodu, a literał edytowalny został wyróżniony do zastąpienia. Umieść kursor na parametrze zastępczym, aby wyświetlić etykietkę narzędzia dla wartości.

    Etykietka narzędzia parametru zastępczego fragmentu kodu w programie Visual Studio

    Napiwek

    Jeśli w fragmencie kodu znajduje się więcej niż jeden parametr, można nacisnąć klawisz Tab , aby przejść z jednego parametru do drugiego, aby zmienić wartości.

Importowanie przestrzeni nazw

Możesz użyć fragmentu kodu, aby dodać dyrektywę (C#) lub instrukcję using (Visual Basic), dołączając element Import.Imports W przypadku projektów .NET Framework można również dodać odwołanie do projektu przy użyciu elementu References .

Poniższy kod XML przedstawia fragment kodu, który używa metody File.Exists w System.IO przestrzeni nazw, a zatem definiuje element Import w celu zaimportowania System.IO przestrzeni nazw.

<?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>
  • Aby zapoznać się ze schematem XML fragmentu kodu intelliSense programu Visual Studio, zobacz Dokumentacja schematu fragmentów kodu.
  • Aby utworzyć fragmenty kodu w programie Visual Studio Code, zobacz Tworzenie własnych fragmentów kodu.