因此,我正在使用microsoft.Office.Interop.Visio
类库,并且试图编写C#以自动创建拓扑图。此特定的拓扑图需要具有三个不同的网络区域,并且根据服务器的用途,它将进入正确的网络区域。网络区域本身就是形状,也就是服务器的形状。
我的挑战是,当向程序馈送一个指定所需服务器类型的数据文件时,我需要确保将服务器放置在正确的区域中,并调整区域的大小以适合形状。 / p>
现在,我可以成功地将服务器形状添加到新图中,并使用Shape.Autoconnect方法将它们彼此连接。但是,我坚持要弄清楚我应该如何完成上述工作。
任何想法/指导将不胜感激。谢谢!
在新图中添加形状
Master visioConnectorShapeHttps = visioStencil.Masters.get_ItemU(@"HTTPS Line");
Master visioConnectorShapeSQL = visioStencil.Masters.get_ItemU(@"SQLConnection");
Master visioWebRoleMaster = visioStencil.Masters.get_ItemU(@"Azure PaaS WebRole Tier");
Shape visioWebRoleShape = visioPage.Drop(visioWebRoleMaster,10,16);
Master visioWorkerRoleMaster = visioStencil.Masters.get_ItemU(@"Azure PaaS WorkerRole Tier");
Shape visioWorkerRoleShape = visioPage.Drop(visioWorkerRoleMaster,10);
visioWebRoleShape.AutoConnect(visioWorkerRoleShape,VisAutoConnectDir.visAutoConnectDirDown,visioConnectorShapeHttps);
Master visioSQLIaaSMaster = visioStencil.Masters.get_ItemU(@"Azure IaaS Database Tier");
Shape visioSQLIaaSShape = visioPage.Drop(visioSQLIaaSMaster,3);
visioWorkerRoleShape.AutoConnect(visioSQLIaaSShape,visioConnectorShapeSQL);
我想以编程方式为应用程序提供一个数据文件,并自动创建拓扑图,在该拓扑图中,服务器形状正确地适合各种适当的网络区域形状。