Facet (CSDL)
I facet in Conceptual Schema Definition Language (CSDL) rappresentano dei vincoli sulle proprietà di tipi di entità e di tipi complessi. I facet appaiono come attributi XML negli elementi CSDL seguenti:
I facet in CSDL vengono utilizzati da Entity Framework durante la generazione di un database da un modello concettuale. Per ulteriori informazioni, vedere Generate Database Wizard.
Nella tabella seguente vengono descritti i facet supportati in CSDL. Tutti i facet sono facoltativi.
Nota: |
---|
Per informazioni sui tipi di dati nel modello concettuale, vedere Tipi del modello concettuale. |
Facet | Descrizione | Si applica a |
---|---|---|
Collation |
Specifica la sequenza di ordinamento da utilizzare quando si eseguono operazioni di confronto e di ordinamento su valori della proprietà. |
Edm.String |
ConcurrencyMode |
Indica che il valore della proprietà deve essere utilizzato per le verifiche della concorrenza ottimistica. |
Tutte le proprietà EDMSimpleType |
Default |
Specifica il valore predefinito della proprietà se durante la creazione di istanze non viene fornito alcun valore. |
Tutte le proprietà EDMSimpleType |
FixedLength |
Specifica se la lunghezza del valore della proprietà può variare. |
Edm.Binary, Edm.String |
MaxLength |
Specifica la lunghezza massima del valore della proprietà. |
Edm.Binary, Edm.String |
Nullable |
Specifica se la proprietà può avere un valore null. |
Tutte le proprietà EDMSimpleType |
Precision |
Per le proprietà di tipo Decimal, specifica il numero di cifre che un valore della proprietà può avere. Per le proprietà di tipo Time, DateTime e DateTimeOffset, specifica il numero di cifre per la parte frazionaria di secondi del valore della proprietà. |
Edm.DateTime, Edm.DateTimeOffset, Edm.Decimal e Edm.Time. |
Scale |
Specifica il numero di cifre a destra del separatore decimale per il valore della proprietà. |
Edm.Decimal |
Unicode |
Indica se il valore della proprietà viene archiviato come Unicode. |
Edm.String |
Nota Nella generazione di un database da un modello concettuale, la procedura guidata Genera database riconoscerà il valore dell'attributo StoreGeneratedPattern su un elemento Property se questo si trova nel seguente spazio dei nomi: https://schemas.microsoft.com/ado/2009/02/edm/annotation. I valori supportati per l'attributo sono Identity e Computed. Un valore di Identity produrrà una colonna del database con un valore di identità generato nel database. Un valore di Computed produrrà una colonna con un valore calcolato nel database.
Esempio
Nell'esempio seguente vengono mostrati i facet applicati alle proprietà di un tipo di entità:
<EntityType Name="Product">
<Key>
<PropertyRef Name="ProductId" />
</Key>
<Property Type="Int32"
Name="ProductId" Nullable="false"
a:StoreGeneratedPattern="Identity"
xmlns:a="https://schemas.microsoft.com/ado/2009/02/edm/annotation" />
<Property Type="String"
Name="ProductName"
Nullable="false"
MaxLength="50" />
<Property Type="String"
Name="Location"
Nullable="true"
MaxLength="25" />
</EntityType>
Per ulteriori informazioni, vedere Elemento Property (CSDL).
Vedere anche
Riferimento
System.Data.Metadata.Edm.Facet