powerdesigner 生成实体代码 附加生成xml

Posted 文艺流浪汉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了powerdesigner 生成实体代码 附加生成xml相关的知识,希望对你有一定的参考价值。

转自 http://www.java123.net/546230-1.html ,模板已修改成自己的

1.打开 Object Language Properties

菜单位置:Language → Edit Current Object Language

在 C# 2::Profile\\Classifier\\Generated Files ,创建一个 entity.xml 文件。

Name: entity.xml

FileName:%topContainerCode%.xml

Encoding: utf-8

Comment:

.if (%isGenerated%)

.set_object(_usingContext,,new)

[\\ %NHebernateHead%\\n]\\

%NHebernateBody% \\n

%NHebernateFoot%

.endif  

 

%NHebernateBody%

2.设置%NHebernateBody%模板的内容

在 C# 2::Profile\\Classifier\\Templates ,新建一个模板 NHebernateBody


<entity name="%Code%" remarks="%Name%" primarykey="id" >
\\n
.foreach_item(Attributes)
<field name="%Code%" type="%dataType%" remarks="%Name%" isnull="false"></field>
\\n
.next

</entity>

3.配置输出NHibernate的xml文件

在 C# 2::Profile\\BasePackage\\Templates\\Visual Studio ,将模板修改为:

.// Declare classifiers of the package
.foreach_item(Classifiers,,,%IsShortcut%==false)
.if (%IsSelected%) and (%isInner% == false)
<File
RelPath = "%sourceFilePath%"
SubType = "Code"
BuildAction = "Compile"
/>
<File
RelPath = "%sourceFilePath%\\\\%topContainerCode%.xml"
BuildAction = "EmbeddedResource"
/>
.endif(\\n)
.next
.// Declare classifiers of the subpackages
.foreach_item(Packages,,,%IsShortcut%==false)
.if (%isAssembly% == false)
%ProjectSourceFiles%
.endif
.next

NHibernate的xml配置完成。

 

 

最后,一起导出实体和NHibernate的.xml文件

菜单位置:Language → Generate C# 2 Code

 

以上是关于powerdesigner 生成实体代码 附加生成xml的主要内容,如果未能解决你的问题,请参考以下文章

PowerDesigner使用技巧

从PowerDesigner表字段的Name到EF实体类属性的Display Name(根据PowerDesigner生成EF实体类中文注释和验证元数据)

2016.5.12 用PowerDesigner做数据库逆向工程及生成实体类

PowerDesigner生成sql脚本

PowerDesigner - 防止数据库名称在生成的 SQL 中为大写

POWERDESIGNER生成的代码有引号