📄 asp08.htm
字号:
(1) 创建一个ASP.NET应用程序,在Web页的Page_Load事件中编写如下程序代码: <br>
Sub Page_Load(ByVal Sender As Object, ByVal e AsEventArgs) <br>
DimMyCommand As OleDbDataAdapter <br>
Dim String1 As String Dim MyDataSet As DataSet '定义1个DataSet实例MyDataSet <br>
String1="Provider=Microsoft.Jet.OLEDB.4.0;Data Source = "&Server.MapPath("xs.MDB")
<br>
MyCommand = New OleDbDataAdapter("Select * from xs",String1) ‘取出xs表中的所有数据
<br>
MyDataSet=New DataSet() MyCommand.Fill(MyDataSet,“xs”) ‘将所有数据放在MyDataSet中 <br>
MyDataSet.WriteXml(“c:\student.xml”) ‘调用WriteXml方法将MyDataSet中的 ’数据写入C:盘的student.xml文件中
<br>
MyDataGrid.DataSource = MyDataSet <br>
MyDataGrid.DataMember = "xs“ MyDataGrid.DataBind() <br>
End Sub<br>
(2) XS数据库中xs表中的数据如图所示。 xs表中的数据 <br>
(3) 执行程序,在C盘根目录下创建了 文件student.xml,在记事本中打开, 文件内容显示如下: <?xml version="1.0"
standalone="yes"?> <NewDataSet><br>
<xs> <br>
<XM>张三</XM><br>
<XH>0001</XH><br>
<XB>女</XB><br>
<JG>南京</JG><br>
</xs><br>
<xs><br>
<XM>李四</XM><br>
<XH>0002</XH><br>
<XB>男</XB><br>
<JG>河北</JG><br>
</xs><br>
<xs><br>
<XM>王涛</XM><br>
<XH>0003</XH><br>
<XB>男</XB><br>
<JG>上海</JG></p>
<p></xs><br>
<xs><br>
<XM>张影</XM><br>
<XH>0004</XH><br>
<XB>女</XB><br>
<JG>河南</JG><br>
</xs><br>
</NewDataSet> <br>
2. 用DataSet的ReadXML方法读出XML文档中的数据 使用DataSet的ReadXML方法,只要指明要读取的XML文档的路径和文件名,就可以很
方便地读出XML文档中的所有数据。例如: <br>
Dim MyDataSet As DataSet MyDataSet.ReadXml(server.mappath("student.xml"))<br>
MyDataGrid.DataSource = MyDataSet.tables(0).DefaultVie MyDataGrid.DataBind()
<br>
上述程序段,实现了将当前路径下的student.xml文档内容通过DataSet的ReadXML方法读出,并将读出数据在DataGrid控件中显示的功能。<br>
8.4 应用程序环境设置 <br>
8.4.1 了解ASP.NET配置 <br>
1. Machine.config文件和Web.config 文件 ASP.NET的所有配置文件都是XML格式的文件。<br>
Machine.config 包含这台服务器上 所有ASP.NET应用程序的默认设置,包含整个计算机范围内的程序集绑定、内置远程处理
信道等的配置设置。在一个系统中,只能有一个Machine.config文件,而可以有多个 web.config文件。Machine.config文件和Web.config
文件在语法上没有任何区别。 <br>
2. 配置文件中常用的标记 每个配置文件都包含XML标记和子标记的嵌套层次结构,这些标记带有指定配置设 置的属性。注意:XML标记和属性是区分大小写的。
一般,配置文件的XML语法格式如下所示: <br>
<configuration><br>
<configSections><br>
<section name="[sectionname]" <br>
type="[class]" /><br>
<sectionGroup name="mySectionGroup"><br>
<section name="[mySection["<br>
type="[class]" /><br>
</sectionGroup><br>
</configSections><br>
</configuration> <br>
<configuration>和</configuration>标记间的配置信息可分为下列三种不同类型的元素:<br>
配置节处理程序声明 配置节处理程序声明位于配置文件顶部<configSections>和</configSections>标记之间。<br>
配置节组 节标记可以使用节组标记来进一步限定,以便节划分成逻辑组。<br>
配置节设置区域 配置节设置区域包含实际的配置设置。 <br>
注意:是否使用配置节组完全由用户决定,并不一定要使用节组标记来划分节标记。 其他常用的元素标记及其功能见下表</p>
<p align="center"><img src="image/slide8image006.PNG" width="573" height="286"></p>
<p> 下面的Web.config文件示例声明两个配置<section>处理程序,一个是管理应用程序设置,另一个是管理会话状态。
<br>
<configuration><br>
<configSections><br>
<section name="appSettings"<br>
type="System.Configuration.NameValueFileSectionHandler,<br>
System, Version=1.0.3300.0, <br>
Culture=neutral, PublicKeyToken=b77a5c561934e089" /><br>
<section name="sessionState" <br>
type="System.Web.SessionState.SessionStateSectionHandler, <br>
System.Web, Version=1.0.3300.0, Culture=neutral, <br>
PublicKeyToken=b03f5f7f11d50a3a" <br>
allowDefinition="MachineToApplication" /> <br>
</configSections> <br>
<appSettings><br>
<add key="dsn" value="localhost;uid=MyUserName;pwd=;"
/><br>
<add key="msmqserver" value="server\myqueue" /> <br>
</appSettings><br>
<sessionState cookieless="true" timeout="10" /><br>
</configuration> <br>
8.4.2 使用缓存 ASP.NET提供了强有力的缓存架构。除此之外,ASP.NET还提供了下列缓存:输出缓存,碎片缓存,数据缓存 <br>
1. 输出缓存 为了以更高的效率显示动态生成的页面,ASP.NET提供了输出缓存。 <br>
2. 碎片缓存 如果很多页面中都有相同的部分,ASP.NET可以缓存页面的这个部分,而不需缓存整 个页面,这就是碎片缓存。 @ OutputCache的语法:<br>
<%@ OutputCache Duration="#ofseconds" Location="Any | Client
| Downstream | Server | None" VaryByControl="controlname" VaryByCustom="browser
| customstring" VaryByHeader="headers" VaryByParam="parametername"
%> <br>
@ OutputCache的属性如下: <br>
(1)Duration属性 <br>
(2)Location属性 <br>
(3)VaryByCustom属性 <br>
(4)VaryByHeader属性 <br>
(5)VaryByParam属性<br>
(6)VaryByControl属性<br>
3. 数据缓存 数据缓存是用来保存信息的缓存。使用ASP.NET缓存则可以实现全局的数据传送。另 外与Application相比,使用缓存可以实现自动的锁定
ASP.NET缓存的使用方法与Application和Session对象非常类似。例如,要在缓存中增 加一个数据项可以使用下面的语句: <br>
Cache("name")="Tony" 或者 Cache.insert("name","Tony")
<br>
这样,在ASP.NET缓存中就增加了一个名字为name的数据,它的值是Tony。若要在 其他的页面中访问它,可以通过Cache("name")得到。
为了避免出现缓存不足的现象,应及时清理缓存中保存的不再有用的数据,具体删 除的方法是: cache.remove("name")<br>
8.5 Web Service简介 <br>
8.5.1 了解Web服务 Web服务是具有各种程序功能的众多单元,通过标准化的通信协议(HTTP)及数据 格式(XML)公开给客户端。 可以把Web服务理解成应用程序当中所使用的完成特定任务的一个函数。
与组件类似,Web服务表示可以重复使用的黑匣功能,而无需关心服务实现的方式。<br>
使用XML构架:Web服务使用XML作为表示数据的标准方法。<br>
SOAP协议: 简单对象访问协议(SOAP)是一个用来在分散/分布式的环境中交换 信息的简单协议,它是一个基于XML的协议。<br>
服务描述语言---WSDL<br>
UDDI: 规范定义了一个发布和发现有关Web服务信息的标准方法。 <br>
8.5.2 创建Web服务 <br>
1. 声明Web服务 声明Web服务的语法: <br>
<%@ WebService Language="VB" Class="Classname"%> <br>
2. 创建Web服务类 每个.asmx文件都与一个单独的类相关联,Web服务类定义的语法如下所示: <br>
Imports System.Web.Services<br>
<WebService(Namespace := “http://tempuri.org/”)> _Public Class ClassNam<br>
Inherits System.Web.Services.WebService ‘Web服务公开的方法<br>
End Class 说明:<br>
Imports System.Web.Services:用Imports语句以导入System.Web.Services命名空间。<br>
<WebService()>属性指定XML命名空间:基于XML命名空间的Web服务使用XML命 名空间对它们进行唯一标识 。 <br>
用<WebMethod()>属性公开方法:声明了实现Web服务的后,需要添加一个或多个为 Web服务提供各种功能的方法。 将<WebMethod()>属性添加到ASP.NET方法中的语法为:
<br>
<WebMethod()>_ Public Function MethodName() As ReturnType '方法代码 <br>
End Function <br>
8.5.3 公布Web服务 公布Web服务有两种解决方案:用发现文档公布Web服务和通过UDDI公布Web服务。 <br>
1. 用发现文档公布Web服务 发现文档是一个基于XML的文档,包含对Web服务和其他发现文档的引用。发现文件的扩展名为.disco,在ASP.NET中创建Web服务时自动生成该文件。
<br>
2. 通过UDDI公布Web服务 可以通过使用UDDI的方法公布Web服务。这种方法是由Ariba、IBM和Microsoft等多家厂商共同发起的,专门用于提供一个基于Internet的业务注册表。<br>
8.5.4 使用Web服务 <br>
在Visual Studio.NET中创建XML Web服务客户程序可以通过需要以下步骤:<br>
1.使用模板创建客户程序项目。<br>
2.使用Visual Studio.NET提供的工具创建访问XML Web服务的代理类并把它添加到客 户程序项目中。<br>
3.在客户程序的代码中创建代理类实例并通过它来调用XML Web服务的方法。<br>
8.6使用ActiveX控件 <br>
.NET提供了丰富的服务器控件,利用它们,用户可以方便地完成各种功能强大的程序设计,但利用.NET控件并不能实现用户所需要的所有功能。使用ActiveX控件的最简单的方法是将要使用的ActiveX控件添加到“工具箱”中,然后可以像使用.NET控件一样使用它。添加“工具箱”选项
卡上的项的步骤如下: <br>
(1) 从“工具”菜单中选择“自定义工具箱”。<br>
(2) 在“自定义工具箱”对话框中,逐个单击选项卡以浏览“工具箱”项的可用类别。 <br>
(3) 单击“确定”按钮关闭“自定义工具箱”对话框。新工具添加到“工具箱”中当前选定的选项上。 这样用户就可以像使用.NET控件一样使用添加到“工具箱”中的新工具。</p>
<p align="center"><a href="index.htm">回首页</a></p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -