ASP.NET2.0中创建基于XML应用程序

XML是目前在Web上应用很普遍的一项技术,而在.NET 2.0中,则提供了更为丰富的功能,使得在创建XML应用的时候更加得心应手。在本文中,将简单以一个例子来说明,.NET 2.0在创建XML应用时的一些新特性。

首先,我们平常在创建Web应用时,都会选择以数据库的形式来存贮数据的,但如果要以纯XML来存贮数据的话,那的确会是种挑战。在.NET 1.0/1.1框架中,对XML的支持功能有限,比如对同一应用中的多个XML文件的支持。在.NET 2.0中,这种情况得到了改变,增加了新的功能,比如:

1、Datatable现在可以读和写XML数据了

2、使用DatGridView控件,可以让你在dataset里,展示来自不同表的数据。

下面我将以一个Web应用的例子来说明这些新的特性。在这个程序中我将所有的数据都存储在XML文件中。展示了如何同时在dataset里,读和写多个XML文件,以及如何将XML文件绑定到datagridview控件;并且展示了datagridview控件如何从XML文件中读和写数据,如何在多个XML文件中寻找数据。这些新功能,都是以往的.net中做不到的。

任务跟踪应用

接下来,我们将创建一个实现"任务跟踪"的Web应用程序。这个应用程序其实很简单,是可以帮助大家跟踪一些任务和活动的进展情况。它需要创建两个xml文件:activities.xml和tasks.xml文件。Activites文件存放了日常的活动,包括每次活动需要完成些什么任务,任务的描述,开始和结束的时间。Tasks文件存放的是任务的类型,比如浏览email,编写程序,阅读书本等。下图显示了这两个文件之间的数据结构。

两个文件之间的数据结构

通常,可能你会想通过手工来创建这两个xml文件,但实际上这是不提倡的,因为在vs.ne 2005中,可以通过dataset设计器来帮助你设计xml 文件的结构,允许你创建上图关系的xml 文件,下面具体来讲解下。

1) 打开Visual.net 2005 beta 2,新建一个windows应用程序,选择vb.net 语言,将这个工程命名为DTKXML,然后添加一个dataset类型的文件,将其命名为dsactivitiesTasks.。然后添加两个表,activities和tasks 表(见图1)。只需要在设计器界面上,右键点选鼠标,在弹出的菜单上选Add->datatable就可以了。

接着,对着每个表的表名,右键点鼠标,在弹出的菜单里选择Add->Column,为每个表增加列,其中,每个列的名称,属性和数据类型如下表所示:

Activites表

Column Name Property
1 activityid DataType=System.Int32

Autoincrement=True

AutoincrementSeed=1

AutoincrementStep=1

Unique=True

2 taskid DataType=System.Int32
3 description DataType=System.String
4 startime DataType=System.DateTime
5 endtime DataType=System.DateTime

Tasks表

 

Column Name Property
1 taskid DataType=System.Int32

Autoincrement=True

AutoincrementSeed=1

AutoincrementStep=1

Unique=True

AllowDBNull=False

2 task DataType=System.String

AllowDBNull=False

接下来,要为这两个xml文件建立关联,这是十分简单的。在activities和task表的设计视图状态下,鼠标右键点选,在弹出的菜单中选择"Add Relation",按照下图所示,设置两个文件的关联性。

设置两个文件的关联性

2) 这个时候,我们可以设计应用的界面了。应用包括两个窗体,第一个窗体,允许用户处理关于活动的有关信息,第二个窗体,可以提供给用户对各类型的任务进行编辑。

将工程中默认的窗体改名为frmActivities,在工具箱中拖一个datagridview控件到窗体中。接着,注意选择控件右上角的smart tag标记,这时会出现一个菜单(如下图所示),选择dsActivitiesTasks(就是我们刚才创建的dataset类型文件)作为datagridview的数据源。

时间: 2024-10-07 22:38:51

ASP.NET2.0中创建基于XML应用程序的相关文章

ASP.NET 2.0中创建基于XML的应用程序

XML是目前在Web上应用很普遍的一项技术,而在.NET 2.0中,则提供了更为丰富的功能,使得在创建XML应用的时候更加得心应手.在本文中,将简单以一个例子来说明,.NET 2.0在创建XML应用时的一些新特性. 首先,我们平常在创建Web应用时,都会选择以数据库的形式来存贮数据的,但如果要以纯XML来存贮数据的话,那的确会是种挑战.在.NET 1.0/1.1框架中,对XML的支持功能有限,比如对同一应用中的多个XML文件的支持.在.NET 2.0中,这种情况得到了改变,增加了新的功能,比如:

在Asp.Net2.0中可以方便的访问配置文件web.config,如判断debug设置,验证类型

Asp.Net2.0中我们可以方便的访问配置文件中,.NetFrameWork2.0新增加了 SystemWebSectionGroup 类. 允许用户以编程方式访问配置文件的 system.web 组. 比如判断web.config内是否为 debug="true",或者判断身份验证形式 SystemWebSectionGroup ws = new SystemWebSectionGroup(); CompilationSection cp = ws.Compilation; 用cp

ASP.NET2.0中的ClientScriptManager 类用法

asp.net|client ASP.NET2.0中的ClientScriptManager 类用法-如何添加客户端事件 在ASP.NET2.0中,ClientScriptManager 类通过键 String 和 Type 唯一地标识脚本.具有相同的键和类型的脚本被视为重复脚本.因此,我们可以使用脚本类型来避免混淆可能用在页中的来自不同用户控件的相似脚本. <html>  <head>    <title>ClientScriptManager Example<

asp.net2.0中导出EXCEL时内容为什么始终为空?[高分]

问题描述 asp.net2.0中导出EXCEL时内容为什么始终为空?实现方式,首先生成HTML摸板[格式如下,内容太长删除了一些]privateStringBuilderpHead=newStringBuilder();privateStringBuilderpBody=newStringBuilder();privateStringBuilderpFoot=newStringBuilder();publicRptSpareQuery(){pHead.Append("<htmlxmlns:

ASP.NET2.0中的超链接

问题描述 ASP.NET2.0中的超链接控件的下划线怎麽能让它消失,鼠标移过去后下划线又显示出来 解决方案 解决方案二:a:hover{text-decoration:none}

在ASP.NET2.0中通过Gmail发送邮件的代码_实用技巧

    在这里我们主要是使用Gmail,究其原因,是因为,我在使用Gmail的邮箱发送邮件的时候,遇到一小小的困难,而使用163等邮箱的时候,没遇到这个问题.     在ASP.NET2.0中,发送邮件是很简单的,我们主要使用来自命名空间System.Net.Mail中的几个类,MailMessage和SmtpClient.     核心代码是很简洁的,如下:     复制代码 代码如下:  string to = "这里填写接收者的Email地址";      string from

asp.net2.0中如何动态增加删除表格,在增加表格的同时能增加下拉列表控件?在线等

问题描述 asp.net2.0中如何动态增加删除表格,在增加表格的同时,表格中增加下拉列表控件>该如何实施?谢谢! 解决方案 解决方案二:昨晚天刚用JS写一个,给个参考吧-----------<scripttype="text/javascript">//印刷机组信息varmachineStr='<%=machineStr%>';//可开计划的产品编号和名称信息varproductionStr='<%=productionStr%>';//将印

原创:在ASP.NET2.0中实现主页嵌套

asp.net|原创 现在的很多商业公司都设有不同的部门,而这些部门在公司的网站上都有自己的子网站.一般情况下,每一个部门都会根据自己的需要来维护各自的网站.这样做虽然会使公司的网站显得丰富多彩,但这却会对用户的访问带来不便,也就是说,由于各个部门的子网站没有保持一致性而使用户在浏览网站时造成了困难.幸运的是,ASP.NET2.0为我们提供了一种解决方案,这就是主页嵌套. <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:

Asp.Net2.0中实现多任务异步页的一点提示

asp.net|异步     如果想学习Asp.Net2.0的异步页技术,那么一定要仔细阅读http://www.microsoft.com/china/MSDN/library/default.mspx?mfr=true,并且下载它的源代码仔细揣摩.全文共介绍了3种实现异步页的编程模型,且功能一种比一种强大.多余的我就不多说了,直接看最后一种模型:使用PageAsyncTask类.RegisterAsyncTask方法.ExecuteRegisteredAsyncTasks方法和Timeout