Using (Elemento) (CSDL)
En el lenguaje de definición de esquemas conceptuales (CSDL), el elemento Using importa el contenido de un modelo conceptual que ya existe en un espacio de nombres diferente. Si establece el valor del atributo Namespace, podrá hacer referencia a los tipos de entidad, tipos complejos y tipos de asociación definidos en otro modelo conceptual. Un elemento Schema puede tener varios elementos Using secundarios.
Nota: |
---|
El elemento Using en CSDL no funciona exactamente como una instrucción using en un lenguaje de programación.Si importa un espacio de nombres con una instrucción using en un lenguaje de programación, no afectará a los objetos del espacio de nombres original.En CSDL, un espacio de nombres importado puede contener un tipo de entidad derivado de un tipo de entidad del espacio de nombres original.Esto puede afectar a los conjuntos de entidades declarados en el espacio de nombres original.Para obtener más información sobre los conjuntos de entidades, vea EntitySet (Elemento). |
El elemento Using puede tener los elementos secundarios siguientes:
Documentation (cero o un elemento)
Elementos Annotation (cero o más elementos)
Atributos aplicables
En la tabla siguiente se describen los atributos que se pueden aplicar al elemento Using.
Nombre de atributo | Es necesario | Valor |
---|---|---|
Namespace |
Sí |
Nombre del espacio de nombres importado. |
Alias |
Sí |
Un identificador usado en lugar del nombre del espacio de nombres. Aunque este atributo es obligatorio, no es necesario usarlo en lugar del nombre del espacio de nombres para calificar los nombres de los objetos. |
Nota: |
---|
Se puede aplicar cualquier número de atributos de anotación (atributos XML personalizados) al elemento Using.Sin embargo, es posible que los atributos personalizados no pertenezcan a ningún espacio de nombres XML reservado para CSDL.Dos atributos personalizados cualesquiera no pueden tener nombres completos idénticos. |
Ejemplo
En el ejemplo siguiente se muestra cómo usar el elemento Using para importar un espacio de nombres definido en otra parte. Observe que el espacio de nombres para el elemento Schema mostrado es BooksModel
. La propiedad Address
del elemento EntityType del espacio de nombres Publisher
es un tipo complejo definido en el espacio de nombres ExtendedBooksModel
(importado con el elemento Using).
<Schema xmlns="https://schemas.microsoft.com/ado/2008/09/edm"
xmlns:cg="https://schemas.microsoft.com/ado/2006/04/codegeneration"
xmlns:store="https://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator"
Namespace="BooksModel" Alias="Self">
<Using Namespace="BooksModel.Extended" Alias="BMExt" />
<EntityContainer Name="BooksContainer" >
<EntitySet Name="Publishers" EntityType="BooksModel.Publisher" />
</EntityContainer>
<EntityType Name="Publisher">
<Key>
<PropertyRef Name="Id" />
</Key>
<Property Type="Int32" Name="Id" Nullable="false" />
<Property Type="String" Name="Name" Nullable="false" />
<Property Type="BMExt.Address" Name="Address" Nullable="false" />
</EntityType>
</Schema>
Vea también
Conceptos
Información general de Entity Framework
Especificación CSDL
Schema (Elemento) (CSDL)
Otros recursos
Especificaciones CSDL, SSDL y MSL
ADO.NET Entity Data Model Tools
Entity Data Model: Namespaces