Condividi tramite


Facet (CSDL)

I facet in Conceptual Schema Definition Language (CSDL) rappresentano vincoli sulle proprietà di tipi di entità e di tipi complessi.I facet appaiono come attributi XML negli elementi CSDL seguenti:

Nella tabella seguente vengono descritti i facet supportati in CSDL.Tutti i facet sono facoltativi.Alcuni facet elencati di seguito vengono utilizzati da Entity Framework durante la generazione di un database da un modello concettuale.Per ulteriori informazioni, vedere Procedura guidata Crea database.

Nota

Per informazioni sui tipi di dati nel modello concettuale, vedere Tipi del modello concettuale (CSDL).

Facet

Descrizione

Si applica a

Utilizzato per la generazione di database.

Utilizzato dal runtime

Collation

Specifica la sequenza di ordinamento da utilizzare durante

l'esecuzione di operazioni di confronto e ordinamento su valori della proprietà.

Edm.String

No

ConcurrencyMode

Indica che il valore della proprietà deve essere utilizzato per

eseguire controlli della concorrenza ottimistica.

Tutte le proprietà EDMSimpleType

No

Default

Specifica il valore predefinito della proprietà se

durante la creazione di istanze non è specificato alcun valore.

Tutte le proprietà EDMSimpleType

FixedLength

Specifica se la lunghezza del valore della proprietà può variare.

Edm.Binary, Edm.String

No

MaxLength

Specifica la lunghezza massima del valore della proprietà.

Edm.Binary, Edm.String

No

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 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.

No

Scale

Specifica il numero di cifre a destra del separatore decimale per il valore della proprietà.

Edm.Decimal

No

Unicode

Viene indicato se il valore della proprietà viene archiviato come Unicode.

Edm.String

Nota   Durante la generazione di un database da un modello concettuale, tramite la Generazione guidata database verrà riconosciuto il valore dell'attributo StoreGeneratedPattern in 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

Concetti

facet

Specifiche CSDL

Altre risorse

Specifiche CSDL, SSDL e MSL