是否可以使用ASP.NET自动化Visio?

时间:2010-06-22 01:51:27

标签: asp.net visio

我已经用谷歌搜索了这个,但我似乎无法找到任何我能理解的东西,或者B)与我的目标有任何相关性。

背景 我的客户正试图恢复一个ASP.NET 1.0应用程序(是的,你读的那个权利),它能以某种方式从数据库后端创建Visio图表。我可以访问代码(VB.NET),但没有备注/评论,没有文档,也没有2003年的员工。复杂的问题,我在现场很新(仅限ASP.NET 3.5+),所以文件目录看起来很陌生(.resx文件?)

主要任务是在Visio中创建单个甘特图(由数据库后端提供支持)。我已经完成的唯一导出到MS Office产品的是Response.ContentType hack

Response.ContentType = "application/vnd.ms-excel"

但我有理由相信我不能为Visio提供这个功能。我在这里缺少一个解决方案或关键点吗?或许,我应该找一个Visio库吗?

我尝试了this article,但在VWD Express 2010中添加MS Visio 12.0类型库引用到我的解决方案时,我收到一条错误,上面写着“*****”对Microsoft Visio Viewer的引用12.0类型库“无法添加。将类型库转换为.NET程序集失败。没有进程与此对象关联。”*****

有人可以提出任何建议吗?

谢谢! 〜丹

3 个答案:

答案 0 :(得分:0)

您不应从ASP.NET或任何其他服务器环境访问任何 Office程序的自动化API。它不受支持,会随机失败,并可能导致您违反许可条款与Microsoft。

告诉他们“不”。你会更开心。

答案 1 :(得分:0)

Visio具有xml格式(.vdx)

如果您不需要Visio来帮助您进行布局或连接,您可以生成xml文件,然后让您的ASP应用程序将它们作为可消费的Visio文件提供。

如果您需要Visio的甘特图加载项功能,或Visio导出到Web或图像功能,那么这可能不是一种方法。但是,如果您只需要在页面上放置形状,设置文本和其他数据字段,并且具有相当简单的布局和简单的连接线,那么您应该能够走这条路。

本文中的最后一个下载链接是关于Visio和XML的演示文稿,我给了他一段时间:

http://www.visguy.com/2006/11/30/visio-and-xml-conference-resources/

答案 2 :(得分:0)

好吧,您可以下载并使用Aspose.Diagram库。它适用于Microsoft Visio文件,无需安装Microsoft Office Visio。开发人员可以创建,打开和操作图表元素,并导出到许多其他支持的文件格式。根据您的方案,您可以从数据库后端获取详细信息,然后创建Visio图表。使用Aspose.Diagram API可以实现。请参阅the technical resources of Aspose.Diagram for .NET API

我在Aspose担任开发人员传播者。