Definición de la organización de paquetes personalizados para Dynamo 2.0+
Para obtener el diseño deseado para el paquete, hay que tener en cuenta los tipos de nodo que se incluirán en el paquete. Los nodos derivados de NodeModel, los nodos ZeroTouch y los nodos personalizados requieren un proceso ligeramente diferente para definir la categorización. Puede mezclar y combinar estos tipos de nodos dentro del mismo paquete, pero tendrá que emplear una combinación de las estrategias que se describen a continuación.
NodeModel
Las bibliotecas de NodeModel se organizan por defecto en función de la estructura de clases.
El nodo se ubicará en Complementos en:
También puede modificar la categoría mediante el atributo NodeCategory en la clase o en el constructor, como se muestra a continuación.
El nodo ahora se encontrará en Complementos en:
ZeroTouch
Las bibliotecas de ZeroTouch también se organizan por defecto en función de la estructura de clases.
El nodo se ubicará en Complementos en:
También puede modificar la ubicación de la estructura de clases mediante un archivo XML de personalización de Dynamo.
El archivo XML debe denominarse como corresponde y se debe incluir en la carpeta
extra
del paquetePackageName_DynamoCustomization.xml
Nodos personalizados
Los nodos personalizados se organizan en función del Category Name
especificado durante la creación del nodo (mediante el nuevo cuadro de diálogo Nodo personalizado).
ADVERTENCIA
El uso de la notación de puntos en los nombres o categorías de nodos genera subcategorías anidadas adicionales. El .
funciona como un delimitador para determinar la jerarquía adicional. Este comportamiento es nuevo en la biblioteca de Dynamo 2.0.
El nombre de categoría se puede actualizar posteriormente en el archivo .dyf (XML o JSON).
Estrategias para la migración de nodos de paquete
Cuando un autor de un paquete decide cambiar el nombre de un nodo existente anteriormente en una nueva versión, debe proporcionar un medio para migrar los gráficos que contengan nodos con los nombres antiguos. Esto se puede lograr de las siguientes maneras...
Los nodos ZeroTouch utilizan un archivo Namespace.Migrations.XML
ubicado en la carpeta bin
de los paquetes, como por ejemplo:
MyZeroTouchLib.MyNodes.SayHello
a MyZeroTouchLib.MyNodes.SayHelloRENAMED
Los nodos derivados de NodeModel utilizan el atributo AlsoKnownAs
en la clase, como por ejemplo:
SampleLibraryUI.Examples.DropDownExample
a SampleLibraryUI.Examples.DropDownExampleRENAMED
Last updated