13.4 ASP.NET内置对象,应用程序配置和缓存--小结

  本章讲解了ASP.NET内置对象,包括如何创建ASP.NET内置对象和使用ASP.NET内置对象。Web应用程序从本质上来讲是无状态的,为了维持客户端的状态,必须使用ASP.NET内置对象进行客户端状态维护,这些状态包括Session、Cookies等。本章还包括:1)ASP.NET内置对象:包括Session、Cookies等内置对象。2)ASP.NET应用程序配置:包括ASP.NET应用程序配置。3)Web.config配置文件:讲解了Web.config配置文件中常用的属性。4)应用程序数据缓存:讲解了应用程序数据缓存。5)检索应用程序数据缓存对象:讲解了从缓存中获取应用程序数据。 
http://www.w3dev.cn/article/20100527/2532.aspx

Ajax服务器端跳转重定向问题讨论

误。  ajax调用浏览器组件发起的请求和浏览器直接发起的请求有一定区别。  1)浏览器可以通过返回的http状态进行相应的操作,如访问一个页面,此页面重定向时,浏览器可以获取到重定向后的url然后进行转向。  2)对于ajaxajax的目的就是无刷新的,所以对于服务器端进行了重定向时,ajax会获取到重定向状态值3xx和重定向url,然后再获取重定向的页面运行完后输出到客户端的html代码,并且返回200状态。通过最后的示例+firebug的监控可以看出相当于发送了2次ajax请求  所以有一些服务器对访问一些实际不存在的页面进行重定向到网站首页或者一些实际存在的页面时,ajax请求这些
http://www.w3dev.cn/article/20100527/Ajax-request-server-page-redirect.aspx

7.5 ADO.NET 常用对象

  ADO.NET提供了一些常用对象来方便开发人员进行数据库的操作,这些常用的对象通常会使用在应用程序开发中,对于中级的开发人员而言,熟练的掌握这些常用的ADO.NET对象,能够自行封装数据库操作类,来简化开发。ADO.NET的常用对象包括:1)Connection对象。2)DataAdapter对象。3)Command对象。4)DataSet对象。5)DataReader对象。  上面的对象在.NET应用程序操作数据中是非常重要的,它们不仅提供了数据操作的便利,同时,还提供了高级的功能给开发人员。为开发人员解决特定的需求。
http://www.w3dev.cn/article/20100521/2441.aspx

7.6 Connection连接对象

m.Data.SqlClient连接SQL数据库,则需要创建SqlConnection对象,SqlConnection对象创建代码如下所示。+展开-C#SqlConnectioncon=newSqlConnection();//创建连接对象con.ConnectionString="server='(local)';database='mytable';uid='sa';pwd='sa'";//设置连接字串  上述代码创建了一个SqlConnection对象,并且配置了连接字串。SqlConnection对象专门定义了一个专门接受连接字符串的变量ConnectionString,当配置了Con
http://www.w3dev.cn/article/20100521/2442.aspx

7.7 DataAdapter适配器对象

语句或者是存储过程,示例代码如下所示。+展开-C#stringstr="server='(local)';database='mytable';uid='sa';pwd='sa'";//创建连接字串SqlConnectioncon=newSqlConnection(str);con.Open();//打开连接SqlDataAdapterda=newSqlDataAdapter("select*fromnews",con);//DataAdapter对象con.Close();//关闭连接上述代码创建了一个DataAdapter对象,DataSet对象可以使用该对象的Fill方法来填充数据集。
http://www.w3dev.cn/article/20100521/2443.aspx

7.8 Command执行对象

  Command对象可以使用数据命令直接与数据源进行通信。例如,当需要执行一条插入语句,或者删除数据库中的某条数据的时候,就需要使用到Command对象。Command对象的属性包括了数据库在执行某个语句的所有必要的信息,这些信息如下所示:1)Name:Command的程序化名称。2)Connection:对Connection对象的引用。3)CommandType:指定是使用SQL语句或存储过程,默认情况下是SQL语句。4)CommandTest:命令对象包含的SQL语句或存储过程名。5)Parameters:命令对象的参数。  通常情况下,Command对象用于数据的操作,例如执行数据的
http://www.w3dev.cn/article/20100521/2444.aspx

7.9 DataSet数据集对象

ion对象,这个对象包含DataTable中的所有数据。2.RelationsCollection对象  在各个DataTable对象之间,是通过使用RelationsCollection来表达各个DataTable对象之间的关系。RelationsCollection对象可以模拟数据库中的约束的关系。例如当一个包含外键的表被更新时,如果不满足主键-外键约束,这个更新操作就会失败,系统会抛出异常。3.ExtendedProperties对象  ExtendedProperties对象能够配置特定的信息,例如DataTable的密码,更新时间等等。7.9.2 DataTable数据表对象  D
http://www.w3dev.cn/article/20100521/2445.aspx

7.10 DataReader数据访问对象

();//创建DataReader对象con.Close();上述代码创建了一个DataReader对象,从上述代码中可以看出,创建DataReader对象必须经过如下几个步骤:1)创建和打开数据库连接。2)创建一个Command对象。3)从Command对象中创建DataReader对象。4)调用ExecuteReader对象。  DataReader对象的Read方法可以判断DataReader对象中的数据是否还有下一行,并将游标下移到下一行。通过Read方法可以判断DataReader对象中的数据是否读完。示例代码如下所示。+展开-C#while(dr.Read())  通过Read方法
http://www.w3dev.cn/article/20100521/2448.aspx

IE下未选择textarea的内容时如何保存Range对象

ange对象,以便进行相应的操作时,在原来的位置进行,而不是跑到其他的位置去。  Firefox由于调用obj.focus()后光标能回到回来的位置或者选择的文字上,所以不需要保存位置。  但是在不久前在写一个UBB程序时,碰到如果未选择textarea里面的内容,但是光标在textarea里面,IE竟然保存到的Range对象是document.body的,而不是textarea里面。⊙﹏⊙b汗  如下,注意下面js代码仅在IE浏览器下能运行,Firefox的兼容性不判断。input type=button onclick=SaveRange() value=IE下保存Range对象 onf
http://www.w3dev.cn/article/20100518/2411.aspx

第3章 面向对象设计基础

  第二章介绍了C#的基本语法,以及使用方法。C#同Java、C++一样是面向对象的编程语言,同时C#更强化了面向对象的概念。本章将介绍面向对象的基础知识并介绍使用C#编写面向对象的应用程序,在C#中,面向对象的开发能够给系统设计、编码、维护提供更多的便利。目录3.1 什么是面向对象  3.1.1 传统的面向过程  3.1.2 面向对象的概念  3.1.3 面向组件的概念3.2 面向对象的C#实现  3.2.1 定义  3.2.2 创建一个类和其方法  3.2.3 类成员  3.2.4 构造函数和析构函数3.3 对象的生命周期  3.3.1 类成员的访问  3.3.2 类的类型  3.3.3
http://www.w3dev.cn/article/20100513/2367.aspx

3.1 什么是面向对象

的技巧和概念,面向对象并不是什么高深的技术也不是负责的学习体系,面向对象主要是一种设计的思路。使用面向对象进行应用程序开发能够非常好的将现实中的物体进行抽象,这样就在一定程度上丰富了应用程序的结构,不仅如此,面向对象还包括继承、多态等特性以便能够快速构架应用程序。3.1.1 传统的面向过程   在传统应用程序开发领域(如C语言的开发),或者是早期的基于B/S领域的Web应用程序开发(如ASP)都使用的是传统的面向过程的开发语言。而C++/JAVA/C#等开发都是使用的面向对象的开发语言。面向对象的开发语言更接近人类理解自然的语言,对开发人员来说更加通俗易懂,同时也对“对象”进行了较好的抽象
http://www.w3dev.cn/article/20100513/2368.aspx

3.2 面向对象的C#实现

  C#是面向对象的编程语言。在面向对象开发当中,不可避免的要创建一个类,创建类后还需要创建该类的属性和方法来描述对象,然后再创建这个类的对象进行实例化。创建后的对象能够通过类中的属性和方法完成相应的操作。3.2.1 定义  什么是对象?世间万物皆对象,在生活中,可能是一只猫、一只狗,或者是饼干、一张订单、银行卡等等都是对象对象描述了一个物体的特征,抽象一个实际的物体或一个方法。  类定义了对象的特征,对对象进行了描述。这些特征包括对象的属性、对象的方法、对象的权限,以及如何访问该对象。在生活中就有很多例子,例如人类属于世界上的动物,并属于哺乳动物,同样,猫、狗、鸟也属于哺乳动物。所以,哺
http://www.w3dev.cn/article/20100513/2369.aspx

3.3 对象的生命周期

对象,一个对象为bird,另一个为cat对象。在初始化类成员时,为不同的对象的类成员赋了不同值,虽然这些类成员的名称相同,但是“.”号说明了该成员所在的对象是不同的。另外,由于类是引用类型,所以类的对象之间可以互相赋值,示例代码如下所示。+展开-C#Animalnewbird=newAnimal();//创建对象newbird=bird;//对象之间互相赋值  上述代码将对象newbird初始化后并通过bird赋值,所以对象newbird中的type的值等于对象bird中的type值,因为newbird和bird都是引用的同一个对象。3.3.3 .NET的垃圾回收机制  当创建一个对象
http://www.w3dev.cn/article/20100513/2370.aspx

1.1 什么是ASP.NET

控件。1.1.6 ASP.NET 3.5 AJAX  在Web应用程序的开发中,越来越多的网站能够实现用户操作的无刷新效果。网站页面的无刷新效果能够提高用户体验、提高网站应用的操作性并能够降低服务器与客户端之间的通信次数。在ASP.NET 3.5中,Visual Studio开发环境提供了AJAX应用环境,开发人员能够使用Visual Studio 2008进行AJAX应用程序和AJAX控件的创建,如图1-2所示。图1-2 新增的AJAX服务器控件创建应用  用户可以创建ASP.NET AJAX服务器控件和服务器扩展控件用于实现ASP.NET AJAX应用程序中所需要使用的自定义控件。在ASP
http://www.w3dev.cn/article/20100507/2333.aspx

1.2 .NET应用程序需框架

组件的开发及运行过程中扮演着非常重要的角色。在经历了传统的面向过程开发,开发人员寻找更多的高效的方法进行应用程序开发,这其中的发展成为了面向对象的应用程序开发,在面向对象程序开发的过程中,衍生了组件开发。在组件运行过程中,运行时负责管理内存分配、启动或删除线程和进程、实施安全性策略、同时满足当前组件对其它组件的需求。在多层开发和组件开发应用中,运行时负责管理组件与组件之间的功能的需求。  2.统一的编程类  .NET框架为开发人员提供了一个统一、面向对象、层次化、可扩展的类库集(API)。现今,C++开发人员使用的是Microsoft基类库,Java开发人员使用的是Windows基类库,而V
http://www.w3dev.cn/article/20100507/2334.aspx

ASP.NET AJAX应用程序

ET AJAX功能。2.2.2 建立使用AJAX的ASP.NET页面前面的第一个例子是不以任何方式使用AJAX的简单页面,下面要以程序清单2-3中的页面为基础,添加内置的AJAX功能。对于这个例子,要添加一些控件。我们添加的是一般的ASP.NET服务器控件:一个标签控件和一个按钮服务器控件。除了这些控件之外,还要添加一些ASP.NET AJAX控件。在Visual Studio 2008工具箱上有一个新选项卡AJAX Extensions。这个新选项卡包含ASP.NET 3.5提供的新AJAX控件,该选项卡如图2-4所示。图 2-4从Visual Studio 2008工具箱的AJAX Ex
http://www.w3dev.cn/article/20100506/2328.aspx

第二十三章.Adobe Integrated Runtime API

R RunTime下运行。.  涉及AIR API中所有特性可能需要一本书来讲解,这一章重点讲解一些开发桌面程序最主要的特性。目录23.1.借助Flex Framework创建一个AIR程序23.2.理解AIR命令行工具23.3.打开和管理本地窗体23.4.创建本地菜单23.5.读写文件23.6.对象序列化23.7.使用加密的本地存储区23.8.浏览本地文件23.9.使用File System控件23.10.使用本地拖拽(Drag-and-Drop)API23.11.与操作系统剪贴板交互23.12.添加HTML内容23.13.在ActionScript和JavaScript之间跨脚本操作23.
http://www.w3dev.cn/article/20100427/2240.aspx

23.6.对象序列化

自定义对象进行序列化并保存到硬盘驱动器的文件中。23.6.2.解决办法通过class-alias注册自定义类,使用ActionScript Message Format (AMF) 编码序列化对象,并使用FileStream.writeObject方法把对象存储到文件上。23.6.3.讨论使用AIR文件系统API,你可以把经过AMF编码序列化过的对象写入文件流缓冲区中。ActionScript语言中大多数内建对象类型比如String和Boolean都自动支持序列化。这些类型同通过AMF被编码为二进制格式,当经过反序列化可以恢复原来的值。然而自定义对象是不自动支持序列化的,要启动自定义对象序列化
http://www.w3dev.cn/article/20100427/2246.aspx

23.12.添加HTML内容

ight="100%"location="{urlLocation}"//mx:WindowedApplicationHTML.historyBack和HTML.historyForward方法用于导航HTMLLoader对象中的历史记录。如果你熟悉Ajax应用程序的构建,那HTMLLoader类的历史记录管理非常类似于window.history JavaScript对象。除了这两个方法外,你还可以访问历史记录数多少,以及当前所处的位置,以及用historyGo方法直接载入指定的历史记录。从这个例子中不难发现,开发一个基于SWF的个性化Web浏览器是如此简单。这里还有些HTMLLoader
http://www.w3dev.cn/article/20100427/2252.aspx

19.4.添加一个XMLList到XML对象

19.4.1. 问题如何追加一个XMLList 对象到XML 对象的节点里?19.4.2. 解决方法使用E4X 表达式, 找出需要追加的XMLList 对象所在的节点, 然后在该节点上调用appendChild 方法。19.4.3. 讨论通过使用XML 类的appendChild 方法, 你可以直接添加一个XMLList 到一个XML 对象或另一个XMLList 对象里。例如说下列的XML 对象:+展开-ActionScriptvarxmlNode:XML=data>itemid="1"/>itemid="2"/>itemid="3"/>/data>然后, 对新的节点调用appendChil
http://www.w3dev.cn/article/20100421/2193.aspx

19.6.从数组中生成XML对象

19.6.1. 问题如何从一个数组中生成一个XML 对象?19.6.2. 解决方法使用数组索引去存取数组内的数据, 并由对应的数据对象创建XML 对象。然后, 调用XML的appendChild 方法把新建的节点添加到主XML 里。19.6.3. 讨论通过XML 类的appendChild 方法, 可以添加节点到XML 文档里。可是, 要将属性添加到XML 对象, 你需要使用绑定标记运算符” ({})”去填充一个节点值或属性:+展开-ActionScriptvararr:Array=[1,2,3,4,5];varxml:XML=newXML(data>/data>);for(vari:int=
http://www.w3dev.cn/article/20100421/2195.aspx

19.8.将ActionScript 数据对象编码成XML

19.8.1. 问题如何将一个ActionScript 对象转换成XML.。19.8.2. 解决办法可以使用SimpleXMLEncoder.encodeValue 方法把一个对象及其属性写入到一个XMLDocument 对象里。19.8.3. 讨论当创建XML 以传送Web 服务或服务端方法的URL 为XML 时, SimpleXMLEncoder 对象是非常有用的。在这个对象中定义了一个名叫encodeValue 的方法, 其签名格式如下:+展开-ActionScriptencodeValue(obj:Object,qname:QName,parentNode:XMLNode):XMLN
http://www.w3dev.cn/article/20100421/2197.aspx

19.10.从Web服务中把XML译码成为强类型对象

对象, 它们跟之前代码中所定义的是一样的。SchemaTypeRegistry 通过这个声明去把Web 服务中的Plant 对象映像到对应数据的ActionScript 表示形式中。这个方法需要一个限定的Namespace和一个包含这个类的ActionScript 表示形式的Class 对象。+展开-ActionScriptvarqname:QName=newQName("http://localhost/ns/ws","Plant");mx.rpc.xml.SchemaTypeRegistry.getInstance().registerClass(qname,Plant);一个简单值的对象
http://www.w3dev.cn/article/20100421/2199.aspx

第十七章. 共享对象

reObject 由一个较大的文件大小限制(100k), 并且可以通过动作脚本消息格式(AMF)来序列化。AMF 是被用来序列化AS 对象以及在服务端和客户端之间通过Flash Remoting 技术来传输remoting 对象的一种二进制文件格式。使用手上这些工具,你可以开始创建与数据交互的应用程序,而不用依赖于在线服务去存贮数据和反映实时会话数据。目录17.1.创建一个共享对象17.2.写入数据到共享对象17.3.保存本地共享对象17.4.从共享对象中读取数据17.5.删除共享对象中的数据17.6.序列化类型对象17.7.在多个应用程序中访问同一个共享对象17.8.记住用户输入文本框的内容
http://www.w3dev.cn/article/20100419/2161.aspx

17.1.创建一个共享对象

对象(Local SharedObjects)类似于浏览器cookie,本地存贮对象适于用力维护和持久化多个会话中的数据。例如,你可以在用户访问网站之后,使用他们来存贮数据。你可以追踪人口统计数据、档案资料以及文章的潜在阅读用户来影响和改变用户下次访问应用程序的用户体验。远端共享对象(Remote ShareObjects)远端共享对象需要使用FMS,它更像是实时的数据传输设备。当你想要在一个多人参与的聊天室中实时查看聊天记录时,你可以在这个聊天应用程序中使用远端共享对象。当一个远端共享对象在客户端的机器上被更新,它会回馈更新到服务器上的这个共享对象,并会影响和更新其他正在查看相同共享对象
http://www.w3dev.cn/article/20100419/2162.aspx

17.2.写入数据到共享对象

17.2.1. 问题我想要写数据到一个共享对象。17.2.2. 解决办法使用共享对象的data 属性添加数据到共享对象17.2.3. 讨论你可以使用SharedObject 类的data 属性来添加数据到一个共享对象的SOL 文件。应为SharedObject 的data 属性是个动态原件,你可以直接存贮你想要的属性的实例。这个是特殊的属性允许你持久化标准类型和非标准类型的数据。如下的例子展示了如何来存储简单类型到一个共享对象:+展开-ActionScript//获取一个存在的共享对象;或者创建这个对象publicvarsoInstance:SharedObject=SharedObject
http://www.w3dev.cn/article/20100419/2163.aspx

17.4.从共享对象中读取数据

读取一个共享对象或者检测一个共享对象是否已经被创建。17.4.2. 解决办法使用一个SharedObject 实例的data 属性来检查数据或者其他人以变量属性是否可用。17.4.3. 讨论ShardObject.getLocal() 方法用来访问你的应用程序存贮在用户硬盘上的本地共享对象。如果调用了getLocal()方法的时候共享对象还不存在,默认会创建一个新的SOL 文件。为了读取会话中新创建本地共享对象中存贮的数据,你必须首先呼叫flush()方法来写入数据到文件。很长时间内(用户允许Flash player 浏览器插件的设定时间长)都可以通过data 属性来访问共享对象中预先存储的
http://www.w3dev.cn/article/20100419/2165.aspx

17.5.删除共享对象中的数据

17.5.1. 问题我想要从磁盘上清除一个共享对象或者从一个共享对象中删除数据的一个指定位置。17.5.2. 解决办法使用clear()方法来清除一个共享对象。使用delete 关键字来移出一个共享对象的data 属性中的制定数据。17.5.3. 讨论你需要简单的呼叫一个SharedObject 的clear()方法来从你的文件系统中清除这个共享对象。+展开-ActionScript//createanlsoprivatevarlso:SharedObject=getLocal("myLso");//createsomesampledataprivatevarsampleData:Strin
http://www.w3dev.cn/article/20100419/2166.aspx

17.6.序列化类型对象

能去保存自定数据类型的对象到一个共享对象中。17.6.2. 解决办法使用registerClassAlias()方法来注册类型化的对象到Flash 运行时,然后存贮这个对象实例到一个共享对象。17.6.3. 讨论所有的共享对象都包含了一个叫作objectEncoding 的属性,用来标示在这个共享对象中使用的AMF 版本。默认情况,objectEncoding 被设为AMF3—标准的as3 格式。你也可以设定一个共享对象的编码来使用as1 和as2 格式,通过设定objectEncoding 为AMF0。当存贮类型化数据到一个共享对象是,确保已经在运行时注册了类型化对象,这样在特殊的情况发生
http://www.w3dev.cn/article/20100419/2167.aspx

17.7.在多个应用程序中访问同一个共享对象

行的操作系统平台。getLocal()方法特征如下:+展开-ActionScriptSharedObject.getLocal("objectName","pathname"[optionalparameter]):SharedObject如果你指定了pathname,flash 播放器会存贮共享对象到相关的本地主机目录。通过这个,你可以在访问共享对象的时候告诉应用程序一个已知位置来查找共享对象。例如:+展开-ActionScriptlso=SharedObject.getLocal("myLso","/");你可以使用共享对象的已知位置来作为条件,让多个应用程序访问指定共享对象中存贮的信息。
http://www.w3dev.cn/article/20100419/2168.aspx