我正在尝试在Visual Studio中为C#创建一些代码片段,以使我的生活更轻松。但是,在将代码段添加到代码中之前,这些代码段在代码段本身之前和之后都添加了额外的一行。
我知道我可以在代码段中添加$ 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$));
}
}