Proprietà delle proprietà di dominio
Una proprietà di dominio è una caratteristica di un elemento modello che può contenere un valore. Ad esempio, la classe di dominio Person potrebbe includere le proprietà Name e BirthDate. Nella definizione DSL, le proprietà di dominio sono elencate nella casella della classe di dominio sul diagramma e sotto la classe di dominio in DSL Explorer. Per altre informazioni, vedere Procedura: definire un linguaggio specifico di dominio.
Nota
Il termine"proprietà" ha due utilizzi.Una proprietà di dominio è una funzionalità definita in una classe di dominio.Al contrario, molti elementi di un DSL dispongono di proprietà, elencate nella finestra Proprietà nella definizione DSL.Ad esempio, ogni proprietà di dominio dispone di un set di proprietà descritte in questo argomento.
In fase di esecuzione, quando un utente crea un'istanza della classe di dominio, i valori delle proprietà di dominio sono visibili nella finestra Proprietà e possono essere visualizzati sulle forme.
La maggior parte delle proprietà di dominio è implementata come comuni proprietà CLR. Tuttavia, dal punto di vista della programmazione, le proprietà di dominio sono caratterizzate da funzionalità più avanzate rispetto alle proprietà del programma comuni.
È possibile definire regole ed eventi per monitorare lo stato di una proprietà. Per altre informazioni, vedere Responding to and Propagating Changes.
Le transazioni contribuiscono a prevenire stati incoerenti. Per altre informazioni, vedere Navigating and Updating a Model in Program Code.
Quando si seleziona una Proprietà di dominio in un diagramma o in DSL Explorer, nella Finestra Proprietà vengono visualizzati gli elementi seguenti. Per altre informazioni relative all'uso di questi elementi, vedere Customizing and Extending a Domain-Specific Language.
Proprietà |
Descrizione |
Valore predefinito |
---|---|---|
Descrizione |
Descrizione usata per documentare l'interfaccia utente della finestra di progettazione generata. |
<none> |
Nome visualizzato |
Nome che verrà visualizzato nella finestra di progettazione generata per questa proprietà di dominio. Può contenere spazi e punteggiatura, ad esempio "Song Title". |
<none> |
Provider del nome di elemento |
Applicabile solo se Is Element Name è stato impostato su true. È possibile scrivere codice per assegnare un nome a un nuovo elemento in una classe di dominio, effettuando un override del comportamento predefinito. In un file di codice nel progetto DSL, creare una classe derivata da ElementNameProvider. In DSL Explorer fare quindi clic con il pulsante destro del mouse sulla radice del DSL e scegliere Aggiungi tipo esterno. Immettere il nome della classe. Selezionare di nuovo questa proprietà di dominio e selezionare il nome della classe nell'elenco a discesa. |
<none> |
Modificatore di accesso con metodo Get |
Livello di accesso della classe di dominio (public o internal). In tal modo viene controllato l'ambito nel quale il codice programma può accedere alla proprietà. |
public |
Parola chiave della Guida |
La parola chiave facoltativa usata per indicizzare la guida F1 per questa proprietà di dominio. |
<none> |
È visualizzabile |
Se True, la proprietà di dominio è visualizzata dall'utente nella finestra delle proprietà quando i modelli di questo DSL sono aperti. Se False, la proprietà di dominio è nascosta nell'interfaccia utente. Se si desidera che la proprietà di dominio sia visibile ma di sola lettura, impostare È di sola lettura nell'interfaccia utente. |
True |
È Nome elemento |
Se True, questa proprietà di dominio verrà visualizzata come nome del relativo elemento modello in DSL Explorer. I nuovi elementi modello riceveranno un valore predefinito univoco per questa proprietà. Se si desidera controllare la modalità di generazione di questi valori, impostare Provider del nome di elemento. |
False |
È di sola lettura nell'interfaccia utente |
Se True, il valore della proprietà di dominio non può essere modificato tramite l'interfaccia utente. Può comunque essere impostato da programmi e sarà visibile nella finestra Proprietà. Se si desidera nascondere la proprietà di dominio all'utente, impostare È visualizzabile. Se si desidera controllare l'accesso da parte dei programmi, impostare Modificatore di accesso con metodo Set. |
False |
Tipo |
Il tipo di proprietà di dominio (Normal, Calculated o CustomStorage). Per altre informazioni, vedere Calculated and Custom Storage Properties. |
Normal |
Nome |
Nome di questa proprietà di dominio. Deve essere un identificatore valido, ad esempio SongTitle. |
<none> |
Note |
Note informali associate alla proprietà di dominio. |
<none> |
Modificatore di accesso con metodo Set |
Modificatore di accesso per il metodo Set. Consente di controllare l'ambito nel quale il codice programma può impostare la proprietà. |
public |
Tipo |
Tipo di proprietà. Per aggiungere tipi disponibili all'elenco, fare clic con il pulsante destro del mouse sulla radice del DSL in DSL Explorer e scegliere Aggiungi tipo esterno. |
String |