使用企业架构师(版本7.5),我努力改进代码生成C#。为了与这是一个字符串的初始值的属性生成正确的,我已经成功的唯一方法是使用下面的代码。有谁知道,如果这样做一个简单的方法?目前,它似乎有点臃肿。

%if attType=="string" and attInitial!=""%
 = "
%elseIf attInitial!=""%
 = 
%endIf%
%attInitial ? value%
%if attType=="string" and attInitial!=""%
"
%endIf%
有帮助吗?

解决方案

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

EA的attInitial对应在UML来Property.default。

  

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

     

一个字符串,它是的评价当所属类的一个对象被实例化,得到默认值的属性。 - UML 2.2基础设施10.2.5,加上强调

因此根据UML,如果该属性的类型是串,则该值attInitial应该将计算得到一个字符串,而不是字符串的内容的表达文字。

如果你希望它是一个非UML-complient扩展字符串文本值,你必须写一些更复杂,你在上面做处理逃跑。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top