ASP.NET网页设计Atlas进修手记(2):周全懂得ScriptManager仓酷云
我见过net网页编程运行在手机上,包括很廉价的山寨手机,但是却暂时没发现.net在手机上有什么作为。wp7可能是个转机,但是按照《net网页编程的跨平台就是一句谎言。那.net的跨平台也当之无愧是一句谎言。择要:ScriptManager是Atlas一个主要的控件,它用来处置页面上的一切Atlas组件和部分页面的更新,天生相干的客户端剧本,一切必要撑持Atlas的ASP.NET页面上有且只能有一个ScriptManager控件。在ScriptManager控件中我们能够指定必要的剧本库,大概指定经由过程JS来挪用的WebService,还能够指定页面毛病处置等。次要内容
1.概述
2.ScriptManagement
3.WebServiceReferences
4.ErrorHandling
5.ScriptManagerProxy
一.概述
ScriptManager是Atlas一个主要的控件,它用来处置页面上的一切Atlas组件和部分页面的更新,天生相干的客户端剧本,一切必要撑持Atlas的ASP.NET页面上有且只能有一个ScriptManager控件。在ScriptManager控件中我们能够指定必要的剧本库,大概指定经由过程JS来挪用的WebService,还能够指定页面毛病处置。一个完全的ScriptManager情势以下:
<atlas:ScriptManager
EnablePartialRendering="true|false"
EnableScriptComponents="true|false"
ID="ScriptManager1"
OnPageError="PageErrorEventHandler"
runat="server"
>
<ErrorTemplate>
<!--textandHTMLelements-->
<spanid="errorMessageLabel"runat="server"></span>
<inputid="okButton"type="button"value="OK"runat="server"/>
</ErrorTemplate>
<Scripts>
<atlas:ScriptReference
Browser="browserreference"
Path="scriptfilepath"
ScriptName="scriptfilename"
/>
</Scripts>
<Services>
<atlas:ServiceReference
GenerateProxy="true|false"
Path="serverpathname"
Type="typename"
/>
</Services>
</atlas:ScriptManager>
ScriptManager的属性注释以下:
属性名
申明
EnablePartialRendering
是不是开启页面部分更新功效,默许值为false
EnablePartialRendering="true|false"
EnableScriptComponents
是不是启用XML剧本形式,默许值为true
EnableScriptComponents="true|false"
ID
控件ID
ID="ScriptManager1"
OnPageError
页面毛病处置,前面会具体讲到
OnPageError="PageErrorEventHandler"
runat
老是runat="server"
关于EnablePartialRendering和EnableScriptComponents,我以为FlierLu注释的对照透辟:
1.EnablePartialRendering
传统的PostBack形式页面,在用户submit时会重绘全部页面,并招致扫瞄器显式的闪灼。而在基于AJAX手艺的Altas框架中,能够经由过程UpdatePanel标签指定必要重绘的部分。如许一来页面在处置哀求时,会起首依据ScriptManager.IsInPartialRenderingMode属性判别是不是在重绘形式中。假如在重绘形式,则仅仅将必要重绘的UpdatePanel内容,前往给客户端扫瞄器,并由Altas主动举行内容的更新。经由过程这类形式,利用者能够在对代码几近无需修正的情形下,间接享用到AJAX带来的客户端用户体验的提拔。
我们也能够经由过程IsInPartialRenderingMode属性来判别以后页面是不是开启下场部更新功效。
2.EnableScriptComponents
XML剧本形式是Altas引进的基于XML的形貌性组件界说模子,能够经由过程一组XML标签,界说页面中已有Web组件的AJAX举动,而无需对现有组件举行修正和调剂。并且由于一切的举动都是由Altas引擎在客户端静态绑定,以是组件的方针也可不单单限于现有的Web组件。详细的先容能够参考AtlasXMLScript。而关于某些特别情形,比方ASP.NET2.0中的master页面,能够经由过程此属性封闭XML剧本撑持,以年夜幅度简化页面的功效,此时Altas会主动利用AtlasRuntime.js交换完全的Atlas.js剧本。
二.ScriptManagement
Script属性用来包括那些ASP.NETAtlas自带的尺度JS库大概是自界说的JS剧本。我们可使用Path属性来指定一个JS的路径大概利用ScriptName来指定剧本名。ScriptReference示比方下:
<atlas:ScriptManagerID="ScriptManager1"runat="server">
<Scripts>
<atlas:ScriptReferenceScriptName="AtlasUIDragDrop"/>
<atlas:ScriptReferenceScriptName="AtlasWebParts"/>
<atlas:ScriptReferencePath="MyCustom.js"/>
</Scripts>
</atlas:ScriptManager>
ScriptReference的属性以下:
属性
形貌
Path
自界说JS剧本的路径
Path="MyCustom.js"
ScriptName
指定尺度库中的JS剧本名,个中能够指定的有:AtlasUIDragDrop、AtlasUIGlitz、AtlasUIMap、AtlasWebParts
ScriptName="AtlasUIDragDrop"
Browser
指定剧本合用的扫瞄器
ScriptManager确保每个剧本只包含一次,试图增加屡次将会被疏忽。我们也能够利用RegisterScriptReference()办法来增加JS剧本,在利用时要注重增加的JS剧本是不是已存在了。
三.WebServiceReferences
ServiceReferences指定将经由过程JS来挪用的WebService,一样它也撑持经由过程Path指定WebService的路径大概经由过程Type来指定范例。ServiceReferences示比方下:
<atlas:ScriptManagerID="ScriptManager1"runat="server">
<Services>
<atlas:ServiceReferencePath="MyWebService.asmx"/>
<atlas:ServiceReferenceType="MyWebService"/>
</Services>
</atlas:ScriptManager>
ServiceReferences的属性以下:
属性
形貌
Path
指定.asmx的路径
<atlas:ServiceReferencePath="MyWebService.asmx"/>
Type
指定WebService的范例
<atlas:ServiceReferenceType="MyWebService"/>
GenerateProxy
是不是天生客户端剧本的代办署理
GenerateProxy="true"
四.ErrorHandling
默许的堕落信息应当是Exception.Message,ScriptManager同意经由过程会见PageErrorEventArgs参数从头在OnPageError中自界说我们的毛病信息。我们也能够利用ErrorTemplate来自界说毛病信息的显现款式,ErrorTemplate中必需包括以下元素:
控件/元素
属性
申明
Button
id="okButton"
runat="server"
用来封闭毛病信息
<span>大概<div>
id="errorMessageLabel"
runat="server"
显现毛病信息
注重以上元素的属性不克不及变动,包含控件的id,完全的ErrorTemplate代码:
<atlas:ScriptManagerID="ScriptManager1"EnablePartialRendering="true"OnPageError="Page_ErrorHandler"runat="server">
<ErrorTemplate>
<div>
<p><spanid="errorMessageLabel"runat="server"></span></p>
<p><inputid="okButton"type="button"value="OK"runat="server"/></p>
</div>
</ErrorTemplate>
</atlas:ScriptManager>
它有很多缺点的,有兴趣可以到网上去搜索一下。于是微软有发明了“下一代”C++:C++/CLI语言,这个可以解决在.NETFramework中,托管C++产生的问题。在《程序员》杂志上,lippman和李建中合作连载介绍了C++/CLI语言。 碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。 主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。 逐步缩小出错代码段的范围,最终确定错误代码的位置。 网页从开始简单的hmtl到复杂的服务语言,走过了10多个年头,各种技术层出不穷,单个的主流技术也在不断翻新的版本,现在分析下各种语言的区别、优势、劣势、开发注意事项! 我的意思是.net好用,从功能上来说比JAVA强还是很明显的。 Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。 逐步缩小出错代码段的范围,最终确定错误代码的位置。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。 但是目前在CGI中使用的最为广泛的是Perl语言。所以,狭义上所指的CGI程序一般都是指Perl程序,一般CGI程序的后缀都是.pl或者.cgi。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
页:
[1]