facetfacet

Uma faceta é usada para adicionar detalhes a uma definição de propriedade de tipo primitivo.A facet is used to add detail to a primitive type property definition. Uma definição de Propriedade contém informações sobre o tipo de propriedade, mas geralmente é necessário mais detalhes.A property definition contains information about the property type, but often more detail is necessary. Por exemplo, um tipo de entidade em um modelo conceitual pode ter uma propriedade do tipo String cujo valor pode não ser definido como nulo.For example, an entity type in a conceptual model might have a property of type String whose value cannot be set to null. As facetas permitem que você especifique esse nível de detalhe.Facets allow you to specify this level of detail.

A tabela a seguir descreve as facetas que são suportadas em EDM.The table below describes the facets that are supported in the EDM.

Observação

Os valores precisos e os comportamentos de facetas são determinados pelo ambiente de tempo de execução usando uma implementação de EDM.The exact values and behaviors of facets are determined by the run-time environment that uses an EDM implementation.

AspectoFacet DescriçãoDescription Aplica-se aApplies to
Collation Especifica a sequência de agrupamento (ou sequência de classificação) a ser usadas para executar a comparação e em ordenação operações em valores de propriedade.Specifies the collating sequence (or sorting sequence) to be used when performing comparison and ordering operations on values of the property. String
ConcurrencyMode Indica que o valor da propriedade deve ser usado para verificação de simultaneidade otimista.Indicates that the value of the property should be used for optimistic concurrency checks. As propriedades do tipo primitivoAll primitive type properties
Default Especifica o valor de propriedade padrão se nenhum valor é fornecido em cima de instanciação.Specifies the default value of the property if no value is supplied upon instantiation. As propriedades do tipo primitivoAll primitive type properties
FixedLength Especifica se o comprimento do valor da propriedade pode variar.Specifies whether the length of the property value can vary. Binary, StringBinary, String
MaxLength Especifica o comprimento máximo de valor de propriedade.Specifies the maximum length of the property value. Binary, StringBinary, String
Nullable Especifica se a propriedade pode ter um valor nulo.Specifies whether the property can have a null value. As propriedades do tipo primitivoAll primitive type properties
Precision Para propriedades de tipo Decimal, especifica o número de dígitos que um valor de propriedade pode ter.For properties of type Decimal, specifies the number of digits a property value can have. Para propriedades de tipo Time, DateTime, e DateTimeOffset, especifique o número de dígitos para a parte fracionária de segundos de valor de propriedade.For properties of type Time, DateTime, and DateTimeOffset, specifies the number of digits for the fractional part of seconds of the property value. DateTime, DateTimeOffset, Decimal, Time,DateTime, DateTimeOffset, Decimal, Time,
Scale Especifica o número de dígitos à direita do ponto decimal para o valor da propriedade.Specifies the number of digits to the right of the decimal point for the property value. DecimalDecimal
Unicode Indica se o valor da propriedade é armazenado como Unicode.Indicates whether the property value is stored as Unicode. String

ExemploExample

O Entity Framework ADO.net usa uma DSL (linguagem específica de domínio) chamadaCSDL(linguagem de definição de esquema conceitual) para definir modelos conceituais.The ADO.NET Entity Framework uses a domain-specific language (DSL) called conceptual schema definition language (CSDL) to define conceptual models. CSDL seguir define um tipo de entidade de Book .The following CSDL defines a Book entity type. Observe que as facetas são implementadas como atributos XML.Note that facets are implemented as XML attributes. Os valores de aspecto indica que nenhuma propriedade pode ser definida para nulo, e que Scale e Precision de propriedade de cada Revision são definidas como 29.The facet values indicate that no property can be set to null, and that the Scale and Precision of the Revision property are each set to 29.

<EntityType Name="Book">
  <Key>
    <PropertyRef Name="ISBN" />
  </Key>
  <Property Type="String" Name="ISBN" Nullable="false" />
  <Property Type="String" Name="Title" Nullable="false" />
  <Property Type="Decimal" Name="Revision" Nullable="false" Precision="29" Scale="29" />
  <NavigationProperty Name="Publisher" Relationship="BooksModel.PublishedBy"
                      FromRole="Book" ToRole="Publisher" />
  <NavigationProperty Name="Authors" Relationship="BooksModel.WrittenBy"
                      FromRole="Book" ToRole="Author" />
</EntityType>

Consulte tambémSee also