在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;
}