¿hay una buena forma de generar un diagrama de Visio de una arquitectura (con un diseño decente) si tengo una lista de aplicaciones de cliente, servicios y bases de datos? Hubiera pensado que habría una forma decente de generar esto sobre la marcha.generar diagrama de Visio sobre la marcha con .NET
Respuesta
Hay VisioAutomation en GitHub. Si tiene instalado Visio, puede automatizar la generación de un diagrama. Si puede modelar el diagrama que desea como un gráfico dirigido, entonces puede diseñar automáticamente el gráfico para usted (usando MSAGL).
Aquí es un ejemplo básico de crear el gráfico dirigido
using VACONNECT = VisioAutomation.Shapes.Connections;
var d = new VisioAutomation.Models.DirectedGraph.Drawing();
var basic_stencil = "basic_u.vss";
var n0 = d.AddShape("n0", "Node 0", basic_stencil, "Rectangle");
n0.Size = new VA.Drawing.Size(3, 2);
var n1 = d.AddShape("n1", "Node 1", basic_stencil, "Rectangle");
var n2 = d.AddShape("n2", "Node 2", basic_stencil, "Rectangle");
var n3 = d.AddShape("n3", "Node 3", basic_stencil, "Rectangle");
var n4 = d.AddShape("n4", "Node 4\nUnconnected", basic_stencil, "Rectangle");
var c0 = d.AddConnection("c0", n0, n1, "0 -> 1", VACONNECT.ConnectorType.Curved);
var c1 = d.AddConnection("c1", n1, n2, "1 -> 2", VACONNECT.ConnectorType.RightAngle);
var c2 = d.AddConnection("c2", n1, n0, "0 -> 1", VACONNECT.ConnectorType.Curved);
var c3 = d.AddConnection("c3", n0, n2, "0 -> 2", VACONNECT.ConnectorType.Straight);
var c4 = d.AddConnection("c4", n2, n3, "2 -> 3", VACONNECT.ConnectorType.Curved);
var c5 = d.AddConnection("c5", n3, n0, "3 -> 0", VACONNECT.ConnectorType.Curved);
Y luego dibujarlo:
var options = new VisioAutomation.Models.DirectedGraph.MsaglLayoutOptions();
var page = visio_app.ActivePage;
d.Render(page,options);
Esto es la misma _definición_ de una respuesta de solo enlace. –
Exactamente lo que necesito, gracias – eka808
- 1. ¿Cómo generar el diagrama de MS Visio automáticamente?
- 2. ¿Admite MS Visio el diagrama de secuencia?
- 3. Convertir EPS a PDF sobre la marcha con pdflatex sobre la marcha
- 4. ¿Descuento para .NET? ¿Cómo lo traduce SO sobre la marcha?
- 5. métodos Creación sobre la marcha
- 6. Cargando jQuery sobre la marcha
- 7. uploadify | cambiar uploadifysettings sobre la marcha
- 8. Generar diagrama de flujo dinámico
- 9. Archivos ZIP de PHP sobre la marcha
- 10. claves de diccionario Generación sobre la marcha
- 11. Base de datos sobre la marcha con lenguajes de scripting
- 12. Crear tabla/grilla en un diagrama Wireframe Visio 2010
- 13. Creación de subdominios sobre la marcha
- 14. Cálculo de percentiles sobre la marcha
- 15. Creación de claves JSON sobre la marcha
- 16. Desactivar legado de: confirmable sobre la marcha de lotes generar usuarios
- 17. ¿Es posible crear propiedades sobre la marcha, con un objeto dinámico .NET?
- 18. Uso de las entradas de la base de datos para crear dinámicamente un diagrama de Visio
- 19. ¿Cómo nombrar variables sobre la marcha?
- 20. primavera: agregue contexto xml sobre la marcha?
- 21. C# 4.0, ¿Métodos sobre la marcha?
- 22. VB.Net Inicializando una matriz sobre la marcha
- 23. ¿Es posible crear elementos sobre la marcha con jQuery Mobile?
- 24. Crear procesos MPI sobre la marcha con un tenedor?
- 25. Crear objetos sobre la marcha sin asignación variable con PHP
- 26. ¿Cómo crear una imagen sobre la marcha con Node.js?
- 27. Java ArrayList y HashMap sobre la marcha
- 28. ¿Validar EmberJS TextField sobre la marcha?
- 29. Cargando complementos (DLL) sobre la marcha
- 30. Cargando complementos Haskell sobre la marcha
'CSharp' y 'etiquetas' dotnet son simplemente mal aquí. Has estado usando el sitio por el tiempo suficiente que deberías saber mejor. –
pensé que había leído que estos se resuelven a los correctos a través de un script recurrente – leora
He tenido buenos resultados con Aspose.Diagram: http://www.aspose.com/.net/diagram-component.aspx – Adam