Extender las herramientas de Entity Data Model
Puede extender la funcionalidad de las herramientas de ADO.NET Entity Data Model usando las clases del espacio de nombres Microsoft.Data.Entity.Design.Extensibility para escribir extensiones de Visual Studio. Las clases del espacio de nombres Microsoft.Data.Entity.Design.Extensibility le permiten realizar las siguientes acciones:
Nota: |
---|
Para obtener ejemplos de código de las siguientes extensiones, vea ADO.NET Entity Data Model Designer Extension Starter Kit. |
Extender el proceso de generación del archivo .edmx.
La interfaz IModelGenerationExtension expone el método OnAfterModelGenerated, que permite extender la funcionalidad del Asistente para Entity Data Model.
Extender el proceso de actualización del archivo .edmx.
La interfaz IModelGenerationExtension expone el método OnAfterModelUpdated, que permite extender la funcionalidad del Asistente para actualizar modelo.
Agregar propiedades personalizadas a los objetos de Entity Designer y del Explorador de modelos.
La interfaz IEntityDesignerExtendedProperty expone el método CreateProperty, que permite agregar propiedades personalizadas en los objetos visibles de Entity Data Model Designer (Entity Designer) y del Explorador de modelos, y dejar que se vean las propiedades en la ventana Propiedades de Visual Studio.
Cargar y guardar formatos de archivo personalizados.
La interfaz IModelConversionExtension expone los métodos OnAfterFileLoaded y OnBeforeFileSaved, que permiten cargar formatos de archivo personalizados, convertir estos archivos a un formato .edmx y guardar los archivos .edmx en formatos personalizados.
Extender los procesos de carga y de guardado de los archivos .edmx.
La interfaz IModelTransformExtension expone los métodos OnAfterModelLoaded y OnBeforeModelSaved, lo que permite personalizar la forma en la que Entity Designer carga y guarda los archivos .edmx.
La funcionalidad descrita anteriormente se puede combinar en una extensión de Visual Studio. Por ejemplo, podría cargar un archivo .uml mediante el método OnAfterFileLoaded (que convertirá el archivo en un formato .edmx) y, a continuación, modificar el archivo .edmx con el método OnAfterModelLoaded antes de que se muestre en Entity Designer. A la inversa, podría modificar un archivo .edmx cargado con el método OnBeforeModelSaved y, a continuación, convertirlo en un archivo .uml con el método OnBeforeFileSaved antes de guardarlo.
Tenga en cuenta también que se pueden implementar varias implementaciones de las interfaces de extensión en la misma extensión de Visual Studio. Por ejemplo, varias implementaciones de la interfaz IModelTransformExtension podrían, a su vez, efectuar modificaciones en un archivo .edmx antes de que se muestre en Entity Designer o antes de guardarlo.
Para obtener información sobre cómo escribir extensiones de Visual Studio, vea Desarrollar extensiones de Visual Studio y Managed Extensibility Framework (MEF).
Para obtener más información sobre cómo personalizar otras funcionalidades de las herramientas de Entity Data Model, vea Cómo: Personalizar la generación de código de nivel de objeto y Cómo: Personalizar la generación de bases de datos.