C# 自定义代码块很方便,可以很大的提高工作效率;尤其是有自己公司开发模式特点的开发者。
例如,用wpf实体实现IPropertyChanged的属性都会与普通属性有所不同;
例如如下属性:
//密码
private string password;
/// <summary>
/// 密码
/// </summary>
public virtual string Password
{
get
{
return password;
}
set
{
if (password != value)
{
password = value;
OnPropertyChanged("Password");
}
}
}
做成代码块模板的话就是:
<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>prophbh</Title>
<Shortcut>prophbh</Shortcut>
<Description>HBH实体属性和支持字段的代码段</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>
<Literal>
<ID>note</ID>
<ToolTip>说明</ToolTip>
<Default>Note</Default>
</Literal>
</Declarations>
<Code Language="csharp">
<![CDATA[//$note$
private $type$ $field$;
/// <summary>
/// $note$
/// </summary>
public virtual $type$ $property$
{
get { return $field$;}
set
{
if ($field$ != value)
{
$field$ = value;
OnPropertyChanged("$property$");
}
}
}
$end$]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>
保存为 prophbh.snippet ,放到如下路径里:
E:\Program Files\Microsoft Visual Studio 10.0\VC#\Snippets\2052\Visual C#
;(网上说放到C:\Users\Administrator\Documents\Visual Studio 2010\Code Snippets\ ,没测试过,估计也可以)
在代码里 敲入 prophbh ,按tab键就会自动出来相应的代码块模板,填入数据即可,即快又可以防止遗漏。
(另, nhibernate-configuration.xsd,nhibernate-mapping.xsd放入到D:\Program Files\Microsoft Visual Studio 10.0\Xml\Schemas下,则会有XML的智能提示功能。)