Fragmenty kodu — informacje o schemacie

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.

Ten artykuł zawiera odwołanie do schematu XML fragmentu kodu IntelliSense programu Visual Studio. Możesz użyć schematu, aby utworzyć własne fragmenty kodu i dodać je do fragmentów kodu, które już zawiera program Visual Studio.

Element zestawu

Określa nazwę zestawu, do którego się odwołuje fragment kodu.

Wartość tekstowa elementu Assembly jest przyjazną nazwą tekstową zestawu, taką jak System.dll, lub jego silną nazwą, taką jak System,Version=1.0.0.1,Culture=neutral,PublicKeyToken=9b35aa323c18d4fb1.

<Assembly>
    AssemblyName
</Assembly>
Element nadrzędny opis
Element odwołania Zawiera informacje o odwołaniach do zestawów wymaganych przez fragment kodu.

Wartość tekstowa jest wymagana. Tekst określa zestaw, do którego odwołuje się fragment kodu.

Author, element

Określa nazwę autora fragmentu kodu. Menedżer fragmentów kodu wyświetla nazwę przechowywaną w Author elememencie fragmentu kodu.

<Author>
   Code Snippet Author
</Author>
Element nadrzędny opis
Element nagłówka Zawiera ogólne informacje o fragmencie kodu.

Wartość tekstowa jest wymagana. Tekst określa autora fragmentu kodu.

Element kodu

Stanowi kontener dla krótkich bloków kodu.

Słowa kluczowe

Dwa zastrzeżone słowa są dostępne do użycia w tekście Code elementu: $end$ i $selected$. $end$ oznacza lokalizację, aby umieścić kursor po wstawieniu fragmentu kodu. $selected$ reprezentuje zaznaczony tekst dokumentu, który ma być wstawiony do fragmentu kodu podczas wywoływania fragmentu kodu. Na przykład, biorąc pod uwagę fragment kodu, który obejmuje:

$selected$ is a great color.

Jeśli wyraz Blue zostanie wybrany podczas wywoływania fragmentu kodu przez użytkownika, wynik to:

Blue is a great color.

W fragmencie kodu nie można używać ani $end$$selected$ więcej niż raz. Jeśli to zrobisz, rozpoznawane jest tylko drugie wystąpienie. Biorąc pod uwagę fragment kodu, który obejmuje:

$selected$ is a great color. I love $selected$.

Jeśli słowo Blue jest zaznaczone, wynik to:

 is a great color. I love Blue.

Zostanie wyświetlona początkowa spacja, ponieważ istnieje spacja między $selected$ i is.

Wszystkie inne $ słowa kluczowe są dynamicznie definiowane w tagach <Literal> i .<Object>

Poniższy kod przedstawia strukturę Code elementu:

<Code Language="Language"
    Kind="method body/method decl/type decl/page/file/any"
    Delimiter="Delimiter">
    Code to insert
</Code>

Wartość tekstowa jest wymagana. Ten tekst określa kod wraz z literałami i obiektami, których można użyć podczas wstawiania tego fragmentu kodu do pliku kodu.

Atrybuty

Dla elementu dostępne Code są trzy atrybuty:

  • Język. Wymagany atrybut określający język fragmentu kodu. Wartość musi być jedną z następujących wartości:

    Wartość Opis
    VB Fragment kodu języka Visual Basic.
    CSharp Fragment kodu języka C#.
    CPP Fragment kodu C++.
    XAML Fragment kodu XAML.
    XML Fragment kodu XML.
    JavaScript Fragment kodu JavaScript.
    TypeScript Fragment kodu TypeScript.
    SQL Fragment kodu SQL.
    HTML Fragment kodu HTML.
  • Rodzaj. Opcjonalny atrybut określający rodzaj kodu, który zawiera fragment kodu. Wartość musi być jedną z następujących wartości:

    Wartość Opis
    method body Fragment kodu jest treścią metody i dlatego musi zostać wstawiony wewnątrz deklaracji metody.
    method decl Fragment kodu jest metodą i dlatego musi zostać wstawiony do klasy lub modułu.
    type decl Fragment kodu jest typem i dlatego musi zostać wstawiony do klasy, modułu lub przestrzeni nazw.
    file Fragment kodu jest pełnym plikiem kodu i można go wstawić samodzielnie do pliku kodu lub wewnątrz przestrzeni nazw.
    any Fragment kodu można wstawić w dowolnym miejscu. Ten tag jest używany we fragmentach kodu niezależnych od kontekstu, takich jak komentarze.
  • Ogranicznik. Opcjonalny atrybut określający ogranicznik używany do opisywania literałów i obiektów w kodzie. Domyślnie ogranicznik to $.

Element nadrzędny

Element nadrzędny opis
Element fragmentu kodu Zawiera odwołania, definicje importu, deklaracje i kod dla fragmentu kodu.

CodeSnippet, element

Umożliwia określenie nagłówka i wielu fragmentów kodu, które można wstawić do plików programu Visual Studio Code.

<CodeSnippet Format="x.x.x">
    <Header>... </Header>
    <Snippet>... </Snippet>
</CodeSnippet>
Atrybut opis
Format Wymagany atrybut. Określa wersję schematu fragmentu kodu. Atrybut Format musi być ciągiem w składni x.x.x, gdzie każdy x reprezentuje wartość liczbową numeru wersji. Program Visual Studio ignoruje fragmenty kodu z atrybutami formatu , których nie rozumie.
Element podrzędny opis
Element nagłówka Wymagany element. Zawiera ogólne informacje o fragmencie kodu. W fragmencie kodu musi znajdować się dokładnie jeden Header element.
Element fragmentu kodu Wymagany element. Zawiera kod, który ma zostać wstawiony przez program Visual Studio. W fragmencie kodu musi znajdować się dokładnie jeden Snippet element.
Element nadrzędny opis
CodeSnippets, element Element główny schematu XML fragmentu kodu.

CodeSnippets, element

Grupuje elementy CodeSnippet . Element CodeSnippets jest elementem głównym schematu XML fragmentu kodu.

<CodeSnippets>
    <CodeSnippet>... </CodeSnippet>
</CodeSnippets>
Element podrzędny opis
CodeSnippet, element Element opcjonalny. Element nadrzędny dla wszystkich danych fragmentu kodu. Element może zawierać zero lub więcej CodeSnippet elementów CodeSnippets .

Deklaracje, element

Określa literały i obiekty tworzące sekcje fragmentu kodu, które można edytować.

<Declarations>
    <Literal>... </Literal>
    <Object>... </Object>
</Declarations>
Element podrzędny opis
Element literału Element opcjonalny. Definiuje literały fragmentu kodu, które można edytować. Element może zawierać zero lub więcej Literal elementów Declarations .
Object, element Element opcjonalny. Definiuje obiekty fragmentu kodu, które można edytować. Element może zawierać zero lub więcej Object elementów Declarations .
Element nadrzędny opis
Element fragmentu kodu Zawiera odwołania, definicje importu, deklaracje i kod dla fragmentu kodu.

Domyślny element

Określa wartość domyślną literału lub obiektu fragmentu kodu.

<Default>
    Default value
</Default>
Element nadrzędny opis
Element literału Definiuje pola literałów fragmentu kodu, które można edytować.
Object, element Definiuje pola obiektów fragmentu kodu, które można edytować.

Wartość tekstowa jest wymagana. Ten tekst określa domyślną wartość literału lub obiektu wypełniającego pola fragment kodu, który można edytować.

Description, element

Określa opisowe informacje o zawartości fragmentu kodu.

<Description>
    Code Snippet Description
</Description>
Element nadrzędny opis
Element nagłówka Zawiera ogólne informacje o fragmencie kodu.

Wartość tekstowa jest wymagana. Ten tekst opisuje fragment kodu.

Element funkcji

Określa funkcję do wykonania, gdy w programie Visual Studio na literale lub obiekcie zostanie ustawiony fokus.

Uwaga

Nie wszystkie języki obsługują Function elementy. Zobacz dokumentację specyficzną dla języka, aby dowiedzieć się, jakie funkcje są dostępne.

<Function>
    FunctionName
</Function>
Element nadrzędny opis
Element literału Definiuje pola literałów fragmentu kodu, które można edytować.
Object, element Definiuje pola obiektów fragmentu kodu, które można edytować.

Wartość tekstowa jest wymagana. Ten tekst określa funkcję do wykonania, gdy w programie Visual Studio na literale lub polu obiektu zostanie ustawiony fokus.

Element nagłówka

Określa ogólne informacje o fragmencie kodu.

<Header>
    <Title>... </Title>
    <Author>... </Author>
    <Description>... </Description>
    <HelpUrl>... </HelpUrl>
    <SnippetTypes>... </SnippetTypes>
    <Keywords>... </Keywords>
    <Shortcut>... </Shortcut>
</Header>
Element podrzędny opis
Author, element Element opcjonalny. Imię i nazwisko/nazwa osoby lub firmy, która utworzyła fragment kodu. W elemecie Header może występować zero lub jeden Author element.
Description, element Element opcjonalny. Opis fragmentu kodu. W elemecie Header może występować zero lub jeden Description element.
HelpUrl, element Element opcjonalny. Adres URL strony zawierającej poszerzone informacje o fragmencie kodu. W elemecie Header może występować zero lub jeden HelpURL element.
Keywords, element Element opcjonalny. Grupuje Keyword elementy. W elemecie Header może występować zero lub jeden Keywords element.
Element skrótu Element opcjonalny. Określa tekst skrótu, który pozwala wstawić fragment kodu. W elemecie Header może występować zero lub jeden Shortcut element.
Element SnippetTypes Element opcjonalny. Grupuje SnippetType elementy. W elemecie Header może występować zero lub jeden SnippetTypes element. Jeśli nie SnippetTypes ma żadnych elementów, fragment kodu jest zawsze prawidłowy.
Tytuł, element Wymagany element. Przyjazna nazwa fragmentu kodu. W elemecie Header musi znajdować się dokładnie jeden Title element.
Element nadrzędny opis
CodeSnippet, element Element nadrzędny dla wszystkich danych fragmentu kodu.

HelpUrl, element

Określa adres URL strony zawierającej poszerzone informacje o fragmencie kodu.

Uwaga

Program Visual Studio nie używa HelpUrl elementu . Element jest częścią schematu XML fragmentu kodu IntelliSense, a fragmenty kodu zawierające walidację elementu, ale wartość elementu nigdy nie jest używana.

<HelpUrl>
    www.microsoft.com
</HelpUrl>
Element nadrzędny opis
Element nagłówka Zawiera ogólne informacje o fragmencie kodu.

Wartość tekstowa jest opcjonalna. Ten tekst określa adres URL strony, na której można znaleźć więcej informacji o fragmencie kodu.

Id, element

Określa unikatowy identyfikator elementu Literal lub Object . Żadne dwa literały lub obiekty w tym samym fragmencie kodu nie mogą mieć tej samej wartości tekstowej w swoich ID elementach. Literały i obiekty nie mogą zawierać ID elementu o wartości end. Wartość $end$ jest zarezerwowana i służy do oznaczania lokalizacji, aby umieścić kursor po wstawieniu fragmentu kodu.

<ID>
    Unique Identifier
</ID>
Element nadrzędny opis
Element literału Definiuje pola literałów fragmentu kodu, które można edytować.
Object, element Definiuje pola obiektów fragmentu kodu, które można edytować.

Wartość tekstowa jest wymagana. Ten tekst określa unikatowy identyfikator obiektu lub literału.

Import, element

Określa zaimportowane przestrzenie nazw używane przez fragment kodu.

<Import>
    <Namespace>... </Namespace>
</Import>
Element podrzędny opis
Element przestrzeni nazw Wymagany element. Określa przestrzeń nazw używaną przez fragment kodu. W elemecie Import musi znajdować się dokładnie jeden Namespace element.
Element nadrzędny opis
Import, element Element grupowania dla Import elementów.

Import, element

Grupuje poszczególne Import elementy.

<Imports>
    <Import>... </Import>
</Imports>
Element podrzędny opis
Import, element Element opcjonalny. Zawiera zaimportowane przestrzenie nazw fragmentu kodu. Element może zawierać zero lub więcej Import elementów Imports .
Element nadrzędny opis
Element fragmentu kodu Zawiera odwołania, definicje importu, deklaracje i kod dla fragmentu kodu.

Element słowa kluczowego

Określa niestandardowe słowo kluczowe fragmentu kodu. Słowa kluczowe fragmentu kodu są wykorzystywane przez program Visual Studio. Stanowią standardowy mechanizm, przy użyciu którego dostawcy treści internetowych mogą dodawać słowa kluczowe na potrzeby wyszukiwania lub kategoryzacji.

<Keyword>
    Code Snippet Keyword
</Keyword>
Element nadrzędny opis
Keywords, element Grupuje poszczególne Keyword elementy.

Wartość tekstowa jest wymagana. Słowo kluczowe fragmentu kodu.

Keywords, element

Grupuje poszczególne Keyword elementy. Słowa kluczowe fragmentu kodu są wykorzystywane przez program Visual Studio. Stanowią standardowy mechanizm, przy użyciu którego dostawcy treści internetowych mogą dodawać słowa kluczowe na potrzeby wyszukiwania lub kategoryzacji.

<Keywords>
    <Keyword>... </Keyword>
    <Keyword>... </Keyword>
</Keywords>
Element podrzędny opis
Element słowa kluczowego Element opcjonalny. Zawiera poszczególne słowa kluczowe fragmentu kodu. Element może zawierać zero lub więcej Keyword elementów Keywords .
Element nadrzędny opis
Element nagłówka Zawiera ogólne informacje o fragmencie kodu.

Element literału

Definiuje literały fragmentu kodu, które można edytować. Element Literal identyfikuje zastąpienie fragmentu kodu w całości zawartego w fragmencie kodu, który można dostosować po wstawieniu fragmentu kodu. Jako literały należy na przykład deklarować ciągi literałowe, wartości liczbowe i nazwy niektórych zmiennych.

Literały i obiekty nie mogą zawierać ID elementu o wartości selected lub end. Wartość $selected$ reprezentuje zaznaczony tekst dokumentu, który ma zostać wstawiony do fragmentu kodu podczas wywoływania fragmentu kodu. $end$ oznacza lokalizację, aby umieścić kursor po wstawieniu fragmentu kodu.

<Literal Editable="true/false">
   <ID>... </ID>
   <ToolTip>... </ToolTip>
   <Default>... </Default>
   <Function>... </Function>
</Literal>
Atrybut opis
Można edytować Atrybut opcjonalny Boolean . Określa, czy po wstawieniu fragmentu kodu można edytować literał. Wartość domyślna tego atrybutu to true.
Element podrzędny opis
Domyślny element Wymagany element. Określa domyślną wartość literału po wstawieniu fragmentu kodu. W elemecie Literal musi znajdować się dokładnie jeden Default element.
Element funkcji Element opcjonalny. Określa funkcję do wykonania, gdy w programie Visual Studio na literale zostanie ustawiony fokus. W elemecie Literal może występować zero lub jeden Function element.
Id, element Wymagany element. Określa unikatowy identyfikator literału. W elemecie Literal musi znajdować się dokładnie jeden ID element.
ToolTip, element Element opcjonalny. Opisuje oczekiwaną wartość i użycie literału. W elemecie Literal może występować zero lub jeden ToolTip element.
Element nadrzędny opis
Deklaracje, element Zawiera literały i obiekty fragmentu kodu, które można edytować.

Element przestrzeni nazw

Określa przestrzeń nazw, którą należy zaimportować, aby fragment kodu został skompilowany i działał. Przestrzeń nazw określona w elemecie Namespace jest automatycznie dodawana do using dyrektywy lub Imports instrukcji na początku kodu, jeśli jeszcze nie istnieje.

<Namespace>
    Namespace
</Namespace>
Element nadrzędny opis
Import, element Importowanie określonej przestrzeni nazw.

Wartość tekstowa jest wymagana. Ten tekst określa obszar nazw, wstawki zakłada jest importowany.

Object, element

Definiuje obiekty fragmentu kodu, które można edytować. Element Object identyfikuje element wymagany przez fragment kodu zdefiniowany poza samym fragmentem kodu. Na przykład formanty interfejsu Windows Forms, formanty środowiska ASP.NET, wystąpienia obiektów i wystąpienia typów powinny być deklarowane jako obiekty. Deklaracje obiektów wymagają określenia typu, który jest wykonywany z elementem Type .

<Object Editable="true/false">
    <ID>... </ID>
    <Type>... </Type>
    <ToolTip>... </ToolTip>
    <Default>... </Default>
    <Function>... </Function>
</Object>
Atrybut opis
Można edytować Atrybut opcjonalny Boolean . Określa, czy po wstawieniu fragmentu kodu można edytować literał. Wartość domyślna tego atrybutu to true.
Element podrzędny opis
Domyślny element Wymagany element. Określa domyślną wartość literału po wstawieniu fragmentu kodu. W elemecie Literal musi znajdować się dokładnie jeden Default element.
Element funkcji Element opcjonalny. Określa funkcję do wykonania, gdy w programie Visual Studio na literale zostanie ustawiony fokus. W elemecie Literal może występować zero lub jeden Function element.
Id, element Wymagany element. Określa unikatowy identyfikator literału. W elemecie Literal musi znajdować się dokładnie jeden ID element.
ToolTip, element Element opcjonalny. Opisuje oczekiwaną wartość i użycie literału. W elemecie Literal może występować zero lub jeden ToolTip element.
Typ, element Wymagany element. Określa typ obiektu. W elemecie Object musi znajdować się dokładnie jeden Type element.
Element nadrzędny opis
Deklaracje, element Zawiera literały i obiekty fragmentu kodu, które można edytować.

Element odwołania

Określa informacje o odwołaniach do zestawów wymaganych przez fragment kodu.

<Reference>
    <Assembly>... </Assembly>
    <Url>... </Url>
</Reference>
Element podrzędny opis
Element zestawu Wymagany element. Zawiera nazwę zestawu, do którego się odwołuje fragment kodu. W elemecie Reference musi znajdować się dokładnie jeden Assembly element.
Element adresu URL Element opcjonalny. Zawiera adres URL strony z dodatkowymi informacjami o zestawie, do którego prowadzi odwołanie. W elemecie Reference może występować zero lub jeden Url element.
Element nadrzędny opis
References, element Element grupowania dla Reference elementów.

References, element

Grupuje poszczególne Reference elementy.

<References>
    <Reference>... </Reference>
</References>
Element podrzędny opis
Element odwołania Element opcjonalny. Zawiera informacje o odwołaniach do zestawów z fragmentu kodu. Element może zawierać zero lub więcej Reference elementów References .
Element nadrzędny opis
Element fragmentu kodu Zawiera odwołania, definicje importu, deklaracje i kod dla fragmentu kodu.

Element skrótu

Określa tekst skrótu służący do wstawiania fragmentu kodu. Wartość tekstowa Shortcut elementu może zawierać tylko znaki alfanumeryczne i podkreślenia (_).

Uwaga

Znak podkreślenia (_) nie jest obsługiwany w skrótach fragmentów kodu C++.

<Shortcut>
    Shortcut Text
</Shortcut>
Element nadrzędny opis
Element nagłówka Zawiera ogólne informacje o fragmencie kodu.

Wartość tekstowa jest opcjonalna. Ten tekst jest używany jako skrót do wstawiania fragmentu kodu.

Element fragmentu kodu

Określa odwołania, definicje importu, deklaracje i kod dla fragmentu kodu.

<Snippet>
    <References>... </References>
    <Imports>... </Imports>
    <Declarations>... </Declarations>
    <Code>... </Code>
</Snippet>
Element podrzędny opis
Code, element Wymagany element. Określa kod, który ma zostać wstawiony do pliku dokumentacji. W elemecie Snippet musi znajdować się dokładnie jeden Code element.
Deklaracje, element Element opcjonalny. Określa literały i obiekty tworzące sekcje fragmentu kodu, które można edytować. W elemecie Snippet może występować zero lub jeden Declarations element.
Import, element Element opcjonalny. Grupuje poszczególne Import elementy. W elemecie Snippet może występować zero lub jeden Imports element.
References, element Element opcjonalny. Grupuje poszczególne Reference elementy. W elemecie Snippet może występować zero lub jeden References element.
Element nadrzędny opis
CodeSnippet, element Umożliwia określenie nagłówka i wielu fragmentów kodu, które można wstawić do plików programu Visual Studio Code.

Fragment kodu, element

Określa sposób dodawania fragmentu kodu przez program Visual Studio.

<SnippetType>
    SurroundsWith/Expansion
</SnippetType>
Element nadrzędny opis
Element SnippetTypes Grupuje SnippetType elementy.

Wartość musi być jedną z następujących wartości:

Wartość Opis
Expansion Umożliwia wstawienie fragmentu kodu na kursor.
Refactoring Określa, że fragment kodu jest używany podczas refaktoryzacji języka C#. Refactoring Nie można używać w niestandardowych fragmentach kodu.
SurroundsWith Umożliwia umieszczenie fragmentu kodu wokół wybranego fragmentu kodu.

Element SnippetTypes

Grupuje poszczególne SnippetType elementy. SnippetTypes Jeśli element nie jest obecny, fragment kodu można wstawić na kursor lub umieścić wokół wybranego kodu.

<SnippetTypes>
    <SnippetType>... </SnippetType>
    <SnippetType>... </SnippetType>
</SnippetTypes>
Element podrzędny opis
Fragment kodu, element Element opcjonalny. Określa, w jaki sposób program Visual Studio wstawia fragment kodu do kodu. Element może zawierać zero lub więcej SnippetType elementów SnippetTypes .
Element nadrzędny opis
Element nagłówka Określa ogólne informacje o fragmencie kodu.

Tytuł, element

Określa tytuł fragmentu kodu. Tytuł przechowywany w Title elememencie fragmentu kodu pojawia się w selektorze fragmentów kodu i jako nazwa fragmentu kodu w Menedżerze fragmentów kodu.

<Title>
    Code Snippet Title
</Title>
Element nadrzędny opis
Element nagłówka Określa ogólne informacje o fragmencie kodu.

Wartość tekstowa jest wymagana. Tekst określa tytuł fragmentu kodu.

ToolTip, element

Opisuje oczekiwaną wartość i użycie literału lub obiektu we fragmencie kodu. Program Visual Studio wyświetla te informacje w etykietce narzędzia podczas wstawiania fragmentu kodu do projektu. Etykietka narzędzia jest również wyświetlana po umieszczeniu wskaźnika myszy nad literałem lub obiektem po wstawieniu fragmentu kodu.

<ToolTip>
    ToolTip description
</ToolTip>
Element nadrzędny opis
Element literału Definiuje pola literałów fragmentu kodu, które można edytować.
Object, element Definiuje pola obiektów fragmentu kodu, które można edytować.

Wartość tekstowa jest wymagana. Ten tekst określa opis etykietki narzędzia, który zostanie skojarzony z obiektem lub literałem we fragmencie kodu.

Typ, element

Określa typ obiektu. Element Object identyfikuje element, którego wymaga fragment kodu, ale prawdopodobnie jest zdefiniowany poza samym fragmentem kodu. Na przykład formanty interfejsu Windows Forms, formanty środowiska ASP.NET, wystąpienia obiektów i wystąpienia typów powinny być deklarowane jako obiekty. Deklaracje obiektów wymagają określenia typu, który jest wykonywany z elementem Type .

<Type>
    Type
</Type>
Element nadrzędny opis
Object, element Definiuje pola obiektów fragmentu kodu, które można edytować.

Wartość tekstowa jest wymagana. Ten tekst określa typ obiektu. Na przykład:

<Type>System.Data.SqlClient.SqlConnection</Type>

Element adresu URL

Określa adres URL strony z dodatkowymi informacjami o zestawie, do którego prowadzi odwołanie.

Uwaga

Element Url jest obsługiwany tylko dla projektów Visual Basic.

<Url>
    www.microsoft.com
</Url>
Element nadrzędny opis
Element odwołania Określa odwołania do zestawów wymagane we fragmencie kodu.

Wartość tekstowa jest wymagana. Ten tekst określa adres URL strony z dodatkowymi informacjami o zestawie, do którego prowadzi odwołanie. Ten adres URL jest wyświetlany, gdy nie można dodać odwołania do projektu.