• c#代码片段新建(sinppet)


    在c#里面我们经常用到

    1、if 然后按2下Tab,出来下面一段代码

    if (true)
    {
             
    }

    2、propfull

    private int myVar;
    
    public int MyProperty
    {
          get { return myVar; }
           set { myVar = value; }
    }
    

    ……

    然后这些在多次项目使用中,总有写不方便,比如mvvm开发winrt应用 有这样子属性写法

    private string _gameId;
    [JsonProperty("GAME_ID")]
    public string GameId
    {
        get { return _gameId; }
        set { this.Set(ref _gameId, value); }
    }
    

      

    每次都这么写这样代码,感觉是不是很卵疼?当然你可以自己写一个代码生成器去生成这些属性,这篇文章重点不是讲这个,忽略过。。

    于是乎作者去百度搜索 if propfull存储位置在C:Program Files (x86)Microsoft Visual Studio 12.0VC#Snippets2052Visual C#(win8.1 64位系统)

    随便找一个文件来打开,本人以profull文件为例子

    <?xml version="1.0" encoding="utf-8"?>
    <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
    	<CodeSnippet Format="1.0.0">
    		<Header>
    			<Title>propfull</Title>
    			<Shortcut>propfull</Shortcut>
    			<Description>属性和支持字段的代码片段</Description>
    			<Author>Microsoft Corporation</Author>
    			<SnippetTypes>
    				<SnippetType>Expansion</SnippetType>
    			</SnippetTypes>
    		</Header>
    		<Snippet>
    			<Declarations>
    				<Literal>
    					<ID>type</ID>
    					<ToolTip>属性类型</ToolTip>
    					<Default>int</Default>
    				</Literal>
    				<Literal>
    					<ID>property</ID>
    					<ToolTip>属性名</ToolTip>
    					<Default>MyProperty</Default>
    				</Literal>
    				<Literal>
    					<ID>field</ID>
    					<ToolTip>支持此属性的变量</ToolTip>
    					<Default>myVar</Default>
    				</Literal>
    			</Declarations>
    			<Code Language="csharp"><![CDATA[private $type$ $field$;
    
    	public $type$ $property$
    	{
    		get { return $field$;}
    		set { $field$ = value;}
    	}
    	$end$]]>
    			</Code>
    		</Snippet>
    	</CodeSnippet>
    </CodeSnippets>
    

    应该有一个 Snippet Editor 编辑器,这个貌似是vb版本,

    各位自行去百度c#版本 

    http://snippy.codeplex.com/releases/view/9316

    https://github.com/mmanela/SnippetDesigner

    各个节点介绍:http://www.cnblogs.com/anderslly/archive/2009/02/16/vs2008-code-snippets.html

    然后我自己修改代码如下:

    文件名:propvm.snippet

    <?xml version="1.0" encoding="utf-8"?>
    <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
    	<CodeSnippet Format="1.0.0">
    		<Header>
    			<Title>propvm</Title>
    			<Shortcut>propvm</Shortcut>
    			<Description>属性和支持字段的代码片段</Description>
    			<Author>Microsoft Corporation</Author>
    			<SnippetTypes>
    				<SnippetType>Expansion</SnippetType>
    			</SnippetTypes>
    		</Header>
    		<Snippet>
    			<Declarations>
    				<Literal>
    					<ID>type</ID>
    					<ToolTip>属性类型</ToolTip>
    					<Default>int</Default>
    				</Literal>
    				<Literal>
    					<ID>property</ID>
    					<ToolTip>属性名</ToolTip>
    					<Default>MyProperty</Default>
    				</Literal>
    				<Literal>
    					<ID>field</ID>
    					<ToolTip>支持此属性的变量</ToolTip>
    					<Default>myVar</Default>
    				</Literal>
    			</Declarations>
    			<Code Language="csharp">
          <![CDATA[private $type$ $field$;
    
    	public $type$ $property$
    	{
    		get { return $field$;}
    		set {this.Set(ref $field$, value);}
    	}
    	$end$]]>
    			</Code>
    		</Snippet>
    	</CodeSnippet>
    </CodeSnippets>
    

    保存到目录:C:Program Files (x86)Microsoft Visual Studio 12.0VC#Snippets2052Visual C#(win8.1 64位系统) 开头我给出目录

    (注意要重启vs,都不会生效。。重启电脑这个作者没试过)

    本人是在Tools->code sinppets manager add 上面目录(C:Program Files (x86)Microsoft Visual Studio 12.0VC#Snippets2052Visual C#)进去,然后remove原来visual c#目录

     上面修改地方:

    1、set {this.Set(ref $field$, value);}
    2、还有快捷键
    <Title>propvm</Title>
    <Shortcut>propvm</Shortcut> 


    测试效果:
     private int myVar;
    
     public int MyProperty
     {
         get { return myVar; }
         set { this.Set(ref myVar, value); }
     }
    

    其他也很类似,各位根据自己项目撸,作者就不在此装逼



      

      

      

  • 相关阅读:
    python 正则表达式
    python 递归查找
    MYSQL 索引优化,避免回表
    MYSQL ibtmp文件暴增
    mysql 主从复制刷新参数
    MYSQL 复制数据过滤
    快速入门Kubernetes
    ansible之playbook的编写
    ansible的安装及常用模块详解
    ERROR Failed to discover available identity versions when contacting http://ct:5000/v3.
  • 原文地址:https://www.cnblogs.com/walleyekneel/p/4354281.html
Copyright © 2020-2023  润新知