简化Enterprise Architect代码生成

时间:2009-07-01 15:24:38

标签: code-generation enterprise-architect

使用Enterprise Architect(版本7.5),我正在尝试优化C#的代码生成。要使具有正确生成字符串的初始值的属性生成,我成功的唯一方法是使用下面的代码。有谁知道更简单的方法吗?它目前看起来有点臃肿。

%if attType=="string" and attInitial!=""%
 = "
%elseIf attInitial!=""%
 = 
%endIf%
%attInitial ? value%
%if attType=="string" and attInitial!=""%
"
%endIf%

1 个答案:

答案 0 :(得分:1)

%if attInitial!=""% 
 =  
%attInitial% 
%endIf% 

EA的attInitial对应于UML中的Property.default。

  

默认值:字符串[0..1]

     

已评估的字符串,以便在实例化拥有类的对象时为该属性提供默认值。 - UML 2.2基础设施10.2.5,重点添加

所以根据UML,如果属性的类型是字符串,那么值attInitial应该是一个表达式,它计算字符串,而不是字符串文字的内容。

如果你确实希望它是一个非UML兼容的扩展字符串文字值,你必须写一些比上面做的更复杂的东西来处理转义。