CodeSmith是針對
NET的一款代碼生成工具
同時它的很多自帶模版幾乎都是針對SQL Server構架的系統
當在在使用Oracle 的時候
由於PL
SQL與T
SQL各個方面的差別
導致許多模版需要自定義
甚至需要重寫許多模版
由於大多數人在使用Oracle數據庫的時候使用下劃線的風格來命名變量
而在
NET開發中有不提倡使用帶下劃線的方式來命名變量
於是本人決定在CodeSmith的模版中來轉換這一風格
在CodeSmith中加入以後模版代碼
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163419.gif)
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163498.gif)
轉換代碼
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163417.gif)
<script runat=
template
>
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163417.gif)
public string GetFixName(string strVal)
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163498.gif)
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163419.gif)
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163496.gif)
{
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163431.gif)
string strReturnVal =
;
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163431.gif)
string[]strVals = strVal
Split(
_
);
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163431.gif)
foreach(string str in strVals)
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163454.gif)
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163496.gif)
{
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163431.gif)
strReturnVal += str
Substring(
) + str
Substring(
)
ToLower();
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163448.gif)
}
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163431.gif)
return strReturnVal;
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163455.gif)
}
![](http://tw.wingwit.com/Article/UploadFiles/201311/2013111322163417.gif)
</script>
當要使用表名
表字段映射成對象的對象
對象字段屬性進程是
可以通過上述函數轉化原來的名稱
以到達與
NET 編碼規范統一的效果
From:http://tw.wingwit.com/Article/program/Oracle/201311/18654.html