Sincronización de modelo y código

www.altova.com Imprimir este apartado Página anterior Subir un nivel Página siguiente

Inicio >  Complemento de UModel para Visual Studio >

Sincronización de modelo y código

El proceso de sincronización entre el archivo de UModel (.ump), es decir, el modelo y el código C# o VB.NET puede ser un proceso manual o automático.

 

La sincronización automática tiene lugar después de añadir las funciones de UModel al proyecto de Visual Studio. Sincronización automática quiere decir que, cada vez que se edite el código, el complemento de UModel para Visual Studio analiza este código y actualiza el modelo. Asimismo, si se realizan cambios en el modelo (p. ej. si se edita un diagrama), el código se actualiza automáticamente para reflejar estos cambios. La sincronización manual, por otro lado, se inicia cuando el usuario lo solicita (ver más abajo).

 

Tanto el proceso automático como el manual actualiza los cambios de forma masiva, es decir, para todo el proyecto. Cuando UModel se ejecuta como complemento de Visual Studio, en la Estructura del modelo no está disponible la opción para combinar o actualizar una sola clase.

 

Los comandos que controlan la sincronización automática o manual están disponibles en el menú Proyecto | UModel:

vs_umodel_synchronization_menu

Comandos del menú Sincronización de código (Visual Studio 2010)

En las versiones más recientes de Visual Studio los elementos de menú seleccionados tienen un aspecto algo distinto:

um_vs_menu_synchronize

Comandos del menú Sincronización de código (Visual Studio 2017)

A continuación describimos todos los comandos de sincronización de código.

 

Sincronizar el código de programa automáticamente con el proyecto de UModel

Esta opción está activada por defecto. Es decir, la sincronización del código con el modelo tiene lugar automáticamente. Para deshabilitar esta opción haga clic en ella.

Sincronizar el proyecto de UModel automáticamente con el código de programa

Igual que la opción anterior pero en el sentido contrario (se sincroniza el modelo con el código).

Combinar el código de programa con el proyecto de UModel

Actualiza el código de programa con los cambios realizados en el proyecto de UModel.

 

Este mismo comando también se llama Sobrescribir código de programa con el proyecto de UModel si la opción está marcada en Proyecto | Proyecto de UModel | Configurar sincronización.

Combinar el proyecto de UModel con el código de programa

Actualiza el proyecto de UModel con los cambios realizados en el código de programa.

 

Este mismo comando también se llama Sobrescribir proyecto de UModel con el código de programa si la opción está marcada en Proyecto | Proyecto de UModel | Configurar sincronización.

Cancelar la sincronización del proyecto de UModel con el código de programa

Permite cancelar la operación de sincronización que está teniendo lugar. Si no se está realizando ninguna operación de sincronización, entonces este comando está deshabilitado.

 

El progreso de la operación de sincronización aparece en la barra de estado de Visual Studio, por ejemplo:

vs_progress_bar_2012

 

En algunos casos no será posible sincronizar el código y el modelo:

 

Si el código no se puede analizar.
Si se produjo un error en el último proceso de ingeniería inversa o directa.
Si UModel detecta un error de sintaxis.

 

Cuando esto ocurra, los detalles del error aparecerán en la ventana Mensajes. Para abrir el archivo de código fuente que contiene el error basta con hacer clic en la línea correspondiente en la ventana Mensajes. El cursor se coloca automáticamente en la línea que contiene el error.

 

Limitaciones de la sincronización automática

 

En Visual Studio algunas modificaciones de código C# y VB.NET no desencadenan un evento interno de Visual Studio y, por tanto, los cambios no se reflejan automáticamente en UModel. Cuando esto ocurra, tiene dos opciones: (i) forzar una sincronización manual o (ii) realizar una modificación distinta que sí desencadene la actualización del archivo de código fuente. La sincronización manual será necesaria cuando se añadan o modifiquen estas entidades:

 

Valores predeterminados de atributos
Valores predeterminados de parámetros de operaciones
ParámetrosDePlantilla
EnlacesDePlantilla
Sección de resumen (para todos los elementos)
Sección de comentarios (para todos los elementos)
Todos los cambios en el cuerpo de los métodos

 

Recuerde que si realiza cambios en cualquiera de estos elementos de modelado en el modelo, la sincronización automática de código tendrá lugar. Es decir, no hay limitaciones a la hora de sincronizar el código con el modelo.

 

Para forzar la sincronización manual del modelo con el código, haga clic con el botón derecho en el archivo de código fuente en el editor de código y seleccione el comando Aplicar ingeniería inversa al archivo actual del menú contextual.

 

Si el proyecto de UModel contiene el perfil de lenguaje para Java, entonces la sincronización automática se deshabilita para dicho proyecto en Visual Studio y aparece un mensaje a tal efecto. Estos proyectos se deben sincronizar a mano (con los comandos de menú UModel | Combinar el código de programa con el proyecto de UModel y UModel | Combinar el proyecto de UModel con el código de programa). Si lo prefiere, también puede utilizar el complemento de UModel para Eclipse.

 


© 2019 Altova GmbH