Не работает сниппет в Visual Studio

211
09 февраля 2018, 17:55

Создал сниппет, импортировал его.

Однако я хочу его импортировать к Visual C# сниппетам, они находятся тут ~\VC#\Snippets\1033\Visual C#

Через Insert snippet я его вставить могу, однако написав его название, он не находится, не подхватывается и его нет в той папке. Прошу помочь

Answer 1

Разместите сниппет в папке C:\Users\username\Documents\Visual Studio 2017\Code Snippets\Visual C#\My Code Snippets\

На сколько я вижу по вашему скрину, вы не назначили своему сниппету шорткат. Добавьте в раздел Header элемент Shortcut

Вот пример разметки одного из моих сниппетов:

<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets  xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
    <CodeSnippet Format="1.0.0">
        <Header>
            <Title>Define a Property With INPC Invocation</Title>
            <Shortcut>propnpc</Shortcut>
            <Description>Code snippet for a property using INPC invocation with Set-method from Vm-class</Description>
            <Author>Andrew NOP</Author>
            <SnippetTypes>
                <SnippetType>Expansion</SnippetType>
            </SnippetTypes>
        </Header>
        <Snippet>
            <Declarations>
                <Literal>
                    <ID>type</ID>
                    <ToolTip>Property Type</ToolTip>
                    <Default>string</Default>
                </Literal>
                <Literal>
                    <ID>field</ID>
                    <ToolTip>Backing-field Name</ToolTip>
                    <Default>myProperty</Default>
                </Literal>
                <Literal>
                    <ID>property</ID>
                    <ToolTip>Property Name</ToolTip>
                    <Default>MyProperty</Default>
                </Literal>
            </Declarations>
            <Code Language="csharp">
                <![CDATA[
$type$ $field$;
public $type$ $property$
{
    get => $field$;
    set => Set(ref $field$, value, nameof($property$));
}]]>
            </Code>
        </Snippet>
    </CodeSnippet>
</CodeSnippets>

Достаточно ввести propnpc и нажать 2 раза Tab, как будет вставлен соответствующий кусок кода

READ ALSO
Особенность цикла foreach

Особенность цикла foreach

Объясните, пожалуйста, как это работает?

230
Создание новой кнопки Button [требует правки]

Создание новой кнопки Button [требует правки]

Как создать кнопку Button, при нажатии на которую форма будет создавать новые экземпляры?

178
Работы с событиями

Работы с событиями

В своей программе, для упрощения кода, создал класс, куда запихнул все однотипные функцииТак вот, в этом классе есть свои объекты, у которых...

176
Automapper exception: needs to have a constructor with 0 args or only optional args

Automapper exception: needs to have a constructor with 0 args or only optional args

Добрый деньС помощью automapper пытался проецировать функции разных типов моделей

418