Поделиться через


Элемент Code (фрагменты кода IntelliSense)

Обновлен: Ноябрь 2007

Предоставляет контейнер для коротких блоков кода фрагментов кода IntelliSense.

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

Атрибуты и элементы

В следующих разделах описаны атрибуты, дочерние и родительские элементы.

Атрибуты

Атрибут

Описание

Delimiter

Необязательный атрибут.

Задает разделитель, используемый для описания литералов и объектов в коде. По умолчанию разделителем является $.

Kind

Необязательный атрибут.

Задает вид кода, содержащийся во фрагменте, а следовательно, и место, в которое должен быть вставлен фрагмент кода для его компиляции. Доступные значения — method body, method decl, type decl, file и any. Дополнительные сведения см. в разделе «Атрибут вида» в следующей таблице.

Language

Обязательный атрибут.

Задает язык фрагмента кода. Доступные значения — VB, CSharp или XML. Дополнительные сведения см. в разделе «Атрибут языка» в следующей таблице.

Атрибут вида

Значение

Описание

method body

Задает, что фрагмент кода является телом метода, а следовательно, он должен вставляться внутрь объявления метода.

method decl

Задает, что фрагмент кода является методом, а следовательно, он должен вставляться внутрь класса или модуля.

type decl

Задает, что фрагмент кода является типом, а следовательно, он должен вставляться внутрь класса, модуля или пространства имен.

file

Задает, что фрагмент является полным файлом кода. Данные фрагменты кода могут вставляться только в файл кода или внутрь пространства имен.

any

Указывает на то, что фрагмент может вставляться в любое место. Данный тег используется для фрагментов кода, которые не зависят от контекста, например комментариев.

Атрибут языка

Значение

Описание

VB

Определяет фрагмент кода Visual Basic.

CSharp

Определяет фрагмент кода Visual C#.

XML

Определяет фрагмент кода XML.

Дочерние элементы

Отсутствуют.

Родительские элементы

Элемент

Описание

Snippet

Содержит ссылки, импорты, объявления и код для фрагмента кода.

Текстовое значение

Текстовое значение является обязательным.

Данный текст задает код, а также литералы и объекты, которые могут быть использованы при вставке данного фрагмента кода в проект.

Заметки

Для использования в тексте элемента Code предусмотрено два зарезервированных слова: $end$ и $selected$. $end$ отмечает место для размещения курсора после вставки фрагмента кода. $selected$ представляет текст, выделенный в документе для вставки во фрагмент при его вызове. Например, если имеется:

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

и слово «Blue» выделено при вызове шаблона, получится следующее:

Blue is a great color. I love Blue.

Все остальные ключевые слова $ динамически определяются в тегах <Literal> и <Object>.

Пример

Элемент Code следующего фрагмента кода показывает, как написать фрагмент кода Visual C#, который создает SqlDataAdapter. На литерал и объект, заданные в элементе Declarations, имеются ссылки в элементе Code по значению их элемента ID. В данном примере ссылка на литерал имеет вид $SQL$, а ссылка на объект имеет вид $Connection$.

<CodeSnippets xmlns="https://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
    <CodeSnippet Format="1.0.0">
        <Header>
            <Title>Create a data adapter</Title>
            <Description>Creates a SqlDataAdapter object.</Description>
            <Author>Microsoft Corporation</Author>
            <Shortcut>createadapter</Shortcut>
        </Header>
        <Snippet>
            <Declarations>
                <Literal>
                    <ID>SQL</ID>
                    <ToolTip>Replace with a SQL connection string.</ToolTip>
                    <Default>"SQL connection string"</Default>
                </Literal>
                <Object>
                    <ID>Connection</ID>
                    <Type>System.Data.SqlClient.SqlConnection</Type>
                    <ToolTip>Replace with a connection object in your application.</ToolTip>
                    <Default>dcConnection</Default>
                </Object>
            </Declarations>
            <Code Language="CSharp">
                <![CDATA[
                    daCustomers = new SqlClient.SqlDataAdapter();
                    selectCommand = new SqlClient.SqlCommand($SQL$);
                    daCustomers.SelectCommand = selectCommand;
                    daCustomers.SelectCommand.Connection = $Connection$;
                ]]>
            </Code>
        </Snippet>
    </CodeSnippet>
</CodeSnippets>

См. также

Основные понятия

Справочник по схеме фрагментов кода