Я пытаюсь сделать несколько фрагментов кода для C # в Visual Studio, чтобы сделать мою жизнь проще.Однако фрагменты добавляют дополнительную строку до и после самого фрагмента, когда он добавляется в код.
Я знаю, что могу добавить $ end $ к фрагменту, чтобы удалить строку в конце (которую я 'добавлю позже) однако у меня еще есть дополнительная строка над фрагментом.Я не смог найти решение для этого.Не уверен, есть ли он.
Попробовал фрагмент в Visual Studio 2017 и 2019 с тем же результатом.
Фрагмент:
<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>NF CustumINotify property</Title>
<Shortcut>nfprop</Shortcut>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>privatePropertyName</ID>
<ToolTip>Replace with propertyName</ToolTip>
<Default>propertyName</Default>
</Literal>
<Literal>
<ID>publicPropertyName</ID>
<ToolTip>Replace with PropertyName</ToolTip>
<Default>PropertyName</Default>
</Literal>
<Object>
<ID>type</ID>
<Type>System.Int64</Type>
<ToolTip>Replace with property type</ToolTip>
<Default>int</Default>
</Object>
</Declarations>
<Code Language="CSharp"><![CDATA[private $type$ _$privatePropertyName$;
public $type$ $publicPropertyName$
{
get => _$privatePropertyName$;
set => SetField(ref _$privatePropertyName$, value, nameof($publicPropertyName$));
}]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>
Пример кода:
public void somefunc()
{
private $type$ _$privatePropertyName$;
public $type$ $publicPropertyName$
{
get => _$privatePropertyName$;
set => SetField(ref _$privatePropertyName$, value, nameof($publicPropertyName$));
}
}
Желаемый выход:
public void somefunc()
{
private $type$ _$privatePropertyName$;
public $type$ $publicPropertyName$
{
get => _$privatePropertyName$;
set => SetField(ref _$privatePropertyName$, value, nameof($publicPropertyName$));
}
}