海妖 发表于 2015-1-18 11:16:06

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语言。

海妖 发表于 2015-1-20 18:56:42

碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。

透明 发表于 2015-1-29 15:01:23

主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。

活着的死人 发表于 2015-2-6 02:14:21

逐步缩小出错代码段的范围,最终确定错误代码的位置。

再现理想 发表于 2015-3-2 23:48:06

网页从开始简单的hmtl到复杂的服务语言,走过了10多个年头,各种技术层出不穷,单个的主流技术也在不断翻新的版本,现在分析下各种语言的区别、优势、劣势、开发注意事项!

若相依 发表于 2015-3-3 12:39:01

我的意思是.net好用,从功能上来说比JAVA强还是很明显的。

柔情似水 发表于 2015-3-4 10:03:30

Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。

兰色精灵 发表于 2015-3-6 17:41:43

逐步缩小出错代码段的范围,最终确定错误代码的位置。

愤怒的大鸟 发表于 2015-3-9 00:49:14

弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。

因胸联盟 发表于 2015-3-18 04:47:09

但是目前在CGI中使用的最为广泛的是Perl语言。所以,狭义上所指的CGI程序一般都是指Perl程序,一般CGI程序的后缀都是.pl或者.cgi。

金色的骷髅 发表于 2015-3-25 12:05:21

弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
页: [1]
查看完整版本: ASP.NET网页设计Atlas进修手记(2):周全懂得ScriptManager仓酷云