PropertyKind Enumeração
Definição
Especifica os tipos de atributos de item no modelo conceitual.Specifies the kinds of item attributes in the conceptual model.
public enum class PropertyKind
public enum PropertyKind
type PropertyKind =
Public Enum PropertyKind
- Herança
Campos
| Extended | 1 | Um membro de enumeração que indica que um atributo de item é |
| System | 0 | Um membro de enumeração que indica que um atributo de item é |
Exemplos
O exemplo de código a seguir demonstra como obter um espaço de trabalho de metadados da conexão e, em seguida, usar esse espaço de trabalho de metadados para recuperar informações sobre as propriedades estendidas no modelo de dados especificado.The following code sample demonstrates how to get a metadata workspace from the connection and then use that metadata workspace to retrieve information about the extended properties in the specified data model. Observe que o espaço de trabalho de metadados é um componente de serviço de tempo de execução que fornece suporte para a recuperação de metadados.Note that the metadata workspace is a runtime service component that provides support for retrieving metadata.
O exemplo de código usa um CSpace para especificar o modelo.The code sample uses a CSpace to specify the model. O CSpace representa o nome padrão do modelo conceitual.The CSpace represents the default name for the conceptual model. O exemplo de código usa o modelo AdventureWorks.The code sample uses the AdventureWorks Model.
using System;
using System.Data;
using System.Data.EntityClient;
using System.Collections.ObjectModel;
using System.Data.Metadata.Edm;
class UsePropertyKindExample
{
static void Main(string[] args)
{
try
{
// Establish a connection to the underlying data provider by
// using the connection string specified in the config file.
using (EntityConnection connection =
new EntityConnection("Name=AdventureworksContext"))
{
// Open the connection.
connection.Open();
// Access the metadata workspace.
MetadataWorkspace workspace =
connection.GetMetadataWorkspace();
// Display the extended properties in the conceptual model.
DisplayProperties(workspace, DataSpace.CSpace);
}
}
catch (MetadataException exceptionMetadata)
{
Console.WriteLine("MetadataException: {0}",
exceptionMetadata.Message);
}
catch (System.Data.MappingException exceptionMapping)
{
Console.WriteLine("MappingException: {0}",
exceptionMapping.Message);
}
}
public static void DisplayProperties(
MetadataWorkspace workspace, DataSpace model)
{
// Get a collection of the entity containers.
ReadOnlyCollection<EntityContainer> containers =
workspace.GetItems<EntityContainer>(model);
// Iterate through the collection to get each entity container.
foreach (EntityContainer container in containers)
{
// Display the extended properties for the entity container.
DisplayExtendedProperties(container);
// Iterate through the collection to get each entity set.
foreach (EntitySetBase baseSet in container.BaseEntitySets)
{
// Check whether this instance is an EntitySet.
if (baseSet is EntitySet)
{
// Display the extended properties for the entity set.
DisplayExtendedProperties(baseSet);
}
}
}
// Get a collection of the entity types.
ReadOnlyCollection<EntityType> entities =
workspace.GetItems<EntityType>(model);
// Iterate through the collection to get each entity type.
foreach (EntityType entity in entities)
{
// Display the extended properties for the entity type.
DisplayExtendedProperties(entity);
}
}
private static void DisplayExtendedProperties(MetadataItem item)
{
foreach (MetadataProperty property in item.MetadataProperties)
{
if (property.PropertyKind == PropertyKind.Extended)
Console.WriteLine(string.Format("\t{0}\t{1}\t{2}",
item.GetType().Name, property.Name, property.Value));
}
}
}