修改VS2008代码重构模板简化接口属性成员实现
在VS2005或VS2008中实现一个接口的代码往往如下:
public class MyCommand : System.Data.IDbCommand
{
#region IDbCommand 成员
public void Cancel()
{
throw new NotImplementedException();
}
public string CommandText
{
get
{
throw new NotImplementedException();
}
set
{
throw new NotImplementedException();
}
}
…
经常要自己修改Property的get和set的代码,但VS2008的编译器中已经支持缺少get和set的定义;那如何在实现接口时让VS2008自动生成缺少get和set的属性呢。其实接口的实现代码是通过模板来完成的,我们只需要适当的修改一下模板就能达到我们的目标。
修改模板文件路径:
X:\Program Files\Microsoft Visual Studio 9.0\VC#\Snippets\2052\Refactoring\PropertyStub.snippet
修改如下:
Code Language="csharp">
<![CDATA[$signature$
{
get;
set;$end$
}]]>
</Code>
修改后实现接口代码如下:
public class MyCommand : System.Data.IDbCommand
{
#region IDbCommand 成员
public void Cancel()
{
throw new NotImplementedException();
}
public string CommandText
{
get;
set;
}
public int CommandTimeout
{
get;
set;
}
public System.Data.CommandType CommandType
{
get;
set;
}
public System.Data.IDbConnection Connection
{
get;
set;
}