1、建立數據庫物理模型數據庫
一、首先打開PowerDesigner—文件—逆向工程—數據庫c#
二、在彈出窗口中選擇數據庫版本,最高10g選擇,肯定數組
三、建立數據源spa
四、點擊SetUP...設置數據源3d
五、填寫數據庫實例名code
六、填寫用戶名,密碼點擊connectorm
七、鏈接成功後點肯定,便可生成物理模型。對象
2、生成實體類blog
一、Tools → Generate Object-Oriented Model,ip
二、彈出框General頁選擇模型語言C#,Detail頁中必定要把Check Model項取消,不然生成會出錯。selection頁選擇要作實體類的表可進行全選。應用後肯定,可在左側目錄中生成剛纔選擇表的對象模型。
另外,此步必定要將Convert names to codes選項去掉,不然生成的字段_會丟失,並且會區分大小寫。最好把此頁4個勾都去掉。
三、導出實體類C#文件:
首先Language → Edit Current Object Language配置模板
C# Profile\Attribute\Templates\definition,下面兩行處加上{ get; set; },第一行表示非數組型變量,第二行表示數組型變量格式
////////////////////以下
.if (%isValidAttribute%)
[%comment%\n]\
[%customAttributes%\n]\
[%oid%\n]\
.if (%Multiple% == false) and (%isIndexer% == false)
[%visibility% ][%flags% ]%dataType% %code%[ = %InitialValue%] {get;set;}
.else
[%visibility% ][%flags% ]%dataType%[%arraySize%] %code%[ = %InitialValue%] {get;set;}
.endif
.endif
若是要設置using,namespace等屬性,在C# Profile\Classfier\Templates\sourceBody
///////////////////////////////////////////////2019.6.10更新 可將總體sourceBody內容改成以下: (加上\[Serializable\],注意[ ]前要加\,不然不會出現[ ])
.ifnot (%isInner%)
[\ %usings%\n ]\
namespace AMXM
{
\[Serializable\]
%definition%
}
.endif
///////////////////////////////////////////////
如下關於sourceBody內容爲舊內容
注意中間有段原文是:
.ifnot (%Package.namespace%)
%definition%
.else
[\
%Package.comment%
]\
[\
%Package.customAttributes%
]\
namespace %Package.namespace%
{
%definition%
}
.endif
第一行表示若是不存在package.namespace,就不生成namespace,直接生成%definition%也就是各種的定義。若是存在package.namespace才生成namespace。
這樣在沒有package.namespace的狀況下,生成的c#類就沒有namespace,這樣顯然不知足要求,可修改上文以下:
.ifnot (%Package.namespace%)
namespace SysWindow.Forms.DataTransfer
{
%definition%
}
.else
[\
%Package.comment%
]\
[\
%Package.customAttributes%
]\
namespace %Package.namespace%
{
%definition%
}
.endif
也就是說,若是沒有package.namespace,就本身寫一個須要的namespace
四、Language → Generate C# 2 Code 選擇導出位置,取消CheckMode和WSDL選擇,便可導出每一個表的C#類文件。