Semplificare Enterprise Architect generazione del codice
-
21-08-2019 - |
Domanda
Enterprise Architect (versione 7.5), sono cercando di affinare la generazione di codice C #. Per fare un attributo con un valore iniziale che è una stringa di generare correttamente, l'unico modo ho avuto successo è con il codice qui sotto. Qualcuno sa se un modo più semplice per fare questo? Attualmente sembra un po 'gonfio.
%if attType=="string" and attInitial!=""%
= "
%elseIf attInitial!=""%
=
%endIf%
%attInitial ? value%
%if attType=="string" and attInitial!=""%
"
%endIf%
Soluzione
%if attInitial!=""%
=
%attInitial%
%endIf%
attInitial
di EA corrisponde a Property.default in UML.
di default: String [0..1]
Una stringa che è valutate per dare un valore di default per l'attributo quando un oggetto della classe proprietaria è istanziata. - UML 2.2 infrastrutture 10.2.5, corsivo
Quindi, secondo UML, se il tipo della proprietà è stringa, il valore di <=> dovrebbe essere un'espressione che restituisce una stringa, non il contenuto di una stringa letterale.
Se non vuoi che sia un valore letterale di stringa estensione non-UML-complient, devi scrivere qualcosa di un po 'più complicato che quello che avete fatto in precedenza per gestire la fuga.