频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

ADO.NET入门(6)

来源: 作者: 出处:巧巧读书 2006-05-09 进入讨论组

  6.XML的延展支持功能 
  
  在ADO中,XML仅仅只是作为输入和输出格式.但是,在ADO.NET中,XML作为数据记录格式为你提供了一系列的方法,如: manipulating, reorganizing, sharing, and transferring. 任何你输入进到DataSet中的数据,不管是不是原创,都能够通过双面编程模型进行处理. 
  
  如同XML文档一样,DataSet 读取/书写数据和模式。数据和模式在HTTP中是可转移的,也可以在任一支持XML的平台上运行。相同的数据在不同的时间段通过不同的模式可以被执行。你利用ReadXmlSchema来书写模式。 XML模式包含了data set中tables 的名称,如同data set 中的relations 和 constraints一样。在调用ReadXmlData之前你应该完成这个步骤 
  
  以下代码示例是一个显示可更新数据表的最简单的 ASP.NET 页面。
  
  <%@ Import Namespace="System.Data" %>
  <%@ Import Namespace="System.IO" %>
  
  <script runat="server" language="C#">
  void Page_Load(Object source, EventArgs e)
  {
  DataSet data = new DataSet();
  
  // Loads XML data and schema
  StreamReader sr;
  sr = new StreamReader(Server.MapPath("data.xml"));
  data.ReadXml(sr);
  sr.Close();
  
  // Add a new record passed through the URL
  if (Request.QueryString.Count >0)
  {
  DataTable dt = data.Tables[0];
  DataRow dr = dt.NewRow();
  dr["FirstName"] = Request.QueryString["First"];
  dr["LastName"] = Request.QueryString["Last"];
  dt.Rows.Add(dr);
  dt.AcceptChanges();
  
  StreamWriter sw;
  sw = new StreamWriter(Server.MapPath("data.xml"));
  data.WriteXml(sw);
  sw.Close();
  }
  
  // Refreshes the UI (made of a grid)
  grid.DataSource = data.Tables[0].DefaultView;
  grid.DataBind();
  }
  </script> 
  
  如图 2 所示,您可以将新的行添加到表中。然而,它不涉及 SQL ServerAccess 表。它只是一个 XML 文件,在处理它的代码中,没有使用 XML 节点或 XMLDOM 方法。您可以用相同的直观数据表接口来读取和更新 XML 记录。您的工作方式与在 ADO 中大致相同,但此处的模型更深入、更庞大,有更多的潜力供您去发掘。
  
  
       Figure 2. Example of an updateable table 
  
  7.结论 
  
  Web 应用程序的成功改变了典型分布式系统的面貌。现在大多数分布式系统都是 n 层系统,这类系统对扩展性和互操作性的要求越来越高。因此,非连接数据处理和 XML 成为最佳实践,并为业界广为接受。 
  
  ADO.NET试图将一些现有的在.NET旗下最好的精华都统成为一体.对于数据访问的所有的编程模式就综合性的,并是非常强大的.也许该模式不能一一满足你的每个要求,但它朝模式设计方向跨出了一大步,不管如何,请记住ADO.NET只是一个测试版,而且只有有限的文档支持. 
  
  ADO程序员从该测试版中将会受益非浅,因为他们已经熟悉了关于ADO.NET的方方面面,包括关于abstraction的最高层次-- inspiring 模型. ADO.NET代码与现有的ADO代码并不兼容,但是功能却近似. 为完全发挥ADO.NET 的优势,与其只是简单的计算出最快的方式来放置代码,还不如实实在在的弄清楚ADO.NET它本身的要领.不管如何,.你所选择的NET编程模式-- Windows Forms, Web Forms, or Web Services,ADO.NET都会在数据存取方面帮你一把.保留地址 http://www.qqread.com/dotnet/n416107002.html 更多文章 更多内容请看Solaris基础知识入门ADO.NET实用技巧.NET移动与嵌入式技术专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章