Simplifique Empresa de geração de código Architect
-
21-08-2019 - |
Pergunta
Usando Enterprise Architect (versão 7.5), eu sou tentando refinar a geração de código para C #. Para tornar um atributo com um valor inicial que é uma seqüência de gerar corretamente, a única maneira que eu fui bem sucedido é com o código abaixo. Alguém sabe se uma maneira mais simples de fazer isso? Atualmente, parece um pouco inchado.
%if attType=="string" and attInitial!=""%
= "
%elseIf attInitial!=""%
=
%endIf%
%attInitial ? value%
%if attType=="string" and attInitial!=""%
"
%endIf%
Solução
%if attInitial!=""%
=
%attInitial%
%endIf%
corresponde attInitial
da EA para Property.default em UML.
padrão: String [0..1]
Uma seqüência que é Avaliados para dar um valor padrão para o atributo quando um objeto da classe proprietária é instanciado. - UML 2.2 infra-estrutura 10.2.5, ênfase adicionada
Assim, de acordo com UML, se o tipo da propriedade é uma string, então o valor attInitial
deve ser uma expressão que avalia para uma cadeia, não o conteúdo de um literal string.
Se você quer que ele seja um valor literal cadeia de extensão não-UML-complient, você tem que escrever algo um pouco mais complicado que o que você tem feito acima para pega escapar.