爱飞 发表于 2015-1-18 11:16:01

ASP.NET编程:ASP.NET中Visio图形的把持与数据的静态显现仓酷云

我觉得这个学习方法很重要。初学者应该跟我一样有同样一个毛病。那就是急于求成。很想就自己做出个小小的系统来。可真要动手,却又茫然而不知所措。为什么会这样呢?因为我们没有耐心去学习基础知识。写根本看不到什么效果的测试代码。背景:在完成使用开辟中,存在如许一种需求,在一张图中静态显现图中图元的数据并把持图元的显现体例。好比一张电气接线图,必要静态显现各个开关的形态及各个电气设备的参数。
成绩:怎样以Web体例满意如许一个需求?
办理计划:用Visio绘制图形,在ASP.NET中挪用Visio供应的编程接口往把持Visio图中的图元,并转换成Web上能够显现的图象格局。关于每一个要静态显现数据的图形,界说一个自界说属性标识它,好比:TagNum,然后在程序中依据TagNum的值从数据库中读取数据来设置响应图形的数据。
参考资本:Visio2003SDK
示例代码:
必要增加对MicrosoftVisio11.0TypeLibrary的援用(COM组件)。代码以下:
usingMicrosoft.Office.Interop.Visio;
privatevoidButton1_Click(objectsender,System.EventArgse)
{
Documentdoc=null;
Cellcell=null;
ApplicationClassapp=newApplicationClass();//运转Visio使用程序
stringCurrentPath=MapPath(".");
doc=app.Documents.OpenEx(CurrentPath+"bintest2.vsd",(short)Microsoft.Office.Interop.Visio.VisOpenSaveArgs.visOpenCopy);//翻开一个visio文件
conststringCUST_PROP_PREFIX="Prop.";//自界说属性前缀
try
{
for(inti=1;i<=doc.Pages.Shapes.Count;i++)
{
doc.Pages.Shapes.Rotate90();//将图形扭转90度
doc.Pages.Shapes.Text="hello";//设置图形的文本
if(doc.Pages.Shapes.get_CellExists("TagNum",(short)Microsoft.Office.Interop.Visio.VisExistsFlags.visExistsAnywhere)!=0)//反省定制是不是存在指定定制属性
{
doc.Pages.Shapes.Text=data;//在此处显现图形数据
}
}
doc.Saved=true;//告知Visio使用程序该文件已保留,否则Visio要呈现是不是要保留的对话框,实践上并未保留,由于我们不想对源文件作修正,只是修正事后显现一下就好了。
doc.Pages.Export(CurrentPath+"test.jpg");//转换成jpg格局的文件
}
finally
{
doc.Close();//封闭翻开的文件
app.Quit();//加入Visio使用程序
}

}

测试情况:
Visio2003+IIS5.0+.NETFrameWork1.1
未办理的成绩:
1、即便在一个外形中界说了自界说属性,经由过程get_CellExists也没法检测到
2、不知怎样经由过程代码改动外形的背景致
2003年中微软发布最新版本的ASP.netWebMatrix,对于我们喜欢用Asp.net来编程的朋友实在是个好消息,我也实实在在的将Asp.net更深入的研究了一下,以方便我以后更好的运用它,同时我也讲讲使用它的感受。

飘灵儿 发表于 2015-1-20 18:53:05

以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。

简单生活 发表于 2015-1-25 23:02:28

平台无关性是PHP的最大优点,但是在优点的背后,还是有一些小小的缺点的。如果在PHP中不使用ODBC,而用其自带的数据库函数(这样的效率要比使用ODBC高)来连接数据库的话,使用不同的数据库,PHP的函数名不能统一。这样,使得程序的移植变得有些麻烦。不过,作为目前应用最为广泛的一种后台语言,PHP的优点还是异常明显的。

小女巫 发表于 2015-2-3 09:51:25

可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。另外,任何ASP.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。

再见西城 发表于 2015-2-8 20:05:38

主流网站开发语言之PHP:PHP的全名非常有趣,它是一个巢状的缩写名称——“PHP:HypertextPreprocessor”,打开缩写还是缩写。PHP是一种HTML内嵌式的语言(就像上面讲的ASP那样)。而PHP独特的语法混合了C,Java,Perl以及PHP式的新语法。它可以比CGI或者Perl更快速地执行动态网页。

谁可相欹 发表于 2015-2-26 03:11:12

虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。

活着的死人 发表于 2015-3-7 11:17:16

ASP.net1.1和2.0在程序上的语法也有很大不同,现在2.0属于新出来的,不知道半年后会不会有3.0(说笑一下)。Windows2003系统自动支持ASP和ASP.net环境,不用安装任何程序。Asp.net属于编译语言。ASP的最大不同(ASP属于解释语言)。

不帅 发表于 2015-3-8 12:06:16

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。

因胸联盟 发表于 2015-3-15 22:27:51

现在的ASP.net分为两个版本:1.1和2.0Asp.net1.1用VS2003(visualstudio2003)编程。Asp.net2.0用VS2005(visualstudio2005)编程。现在一般开发用的是VS2003。

透明 发表于 2015-3-22 17:10:58

主流网站开发语言之CGI:CGI就是公共网关接口(CommonGatewayInterface)的缩写。它是最早被用来建立动态网站的后台技术。这种技术可以使用各种语言来编写后台程序,例如C,C++,Java,Pascal等。

变相怪杰 发表于 2015-3-22 17:10:59

业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。

再现理想 发表于 2015-3-22 17:11:00

虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。
页: [1]
查看完整版本: ASP.NET编程:ASP.NET中Visio图形的把持与数据的静态显现仓酷云