亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > XML > 正文

C#操作XML簡要教程

2024-09-05 20:55:57
字體:
來源:轉載
供稿:網友
由于xml的易共享性等眾多優點,xml技術越來越多地被應用于企業數據處理等領域,如應用于企業報表、新聞發布、會計數據處理等等。
  xml正快速成為從中間層傳送數據到桌面的工具,由于xml的數據可以通過中間層代理與多種后端(數據庫)源集成,目前絕大多數數據庫制造商已全面支持xml技術,提供了各種強大功能處理xml數據。
  microsoft的.net圍繞xml這一核心提供了一個強大而快速的開發工具——c#,它具有前所未有的高開發效率,特別是在xml編程方面。
  c#提供了許多相關類處理xml數據,如處理stream的類: xmlreader和xmlwriter; dom的類:xmlnode、xmldocument和xmlelement等; xpath的類:xmlnavigator;xslt的類:xsltransform。

 

  顯示xml文件內容
  用c#編程實現顯示xml文件中信息的方法是使用.net提供的標準類把xml文件內容讀入一個streamreader類對象中,再用xmldatadocument類的dataset讀xml的方法去讀xml信息到dataset中,dataset再以dataview的方式賦給一個web form上的datagrid,最后由databind顯示數據,具體實現代碼如下:
  using system.xml;
  //處理xml必須加的namespace,還需在references中加system.xml.dll
  using system.io;
  //讀xml文件必須加的namespace
  然后在page_load中加入如下代碼:
  protected void page_load(object sender, eventargs e){
  string datafile="guest.xml" ;
  //假設xml文件名為guest.xml
  streamreader tyj=new streamreader(server.mappath(datafile));
  xmldatadocument datadoc = new xmldatadocument();
  //創建該對象為了讀取xml
  datadoc.dataset.readxml(tyj);
  //讀取guest.xml文件內容
  datagrid1.datasource = datadoc.dataset.tables[0].defaultview;
  //設置datagrid數據源
  datagrid1.databind();
  //綁定
  datadoc=null ;
  //釋放資源
  tyj.close();}
  //釋放streamreader類,這非常重要,否則下次打開會顯示文件已經被使用
  對應于顯示用的web form中datagrid的功能,我們需要增加下面的函數:
  protected void onselectname(object sender,eventargs e) {
  session["select_name"]=(string)datagrid1.selecteditem.cells[1].text.tostring();
  //把選定的 datagrid某行中的一個單元中的值(name)存入一個會話變量中,以便下一頁用
  response.redirect("xml_manage.aspx");}
  //轉到有增加刪除功能的管理頁
  web form加入以下代碼:
 ?。糰sp:datagrid id=datagrid1 runat="server" onselectedindexchanged="onselectname" >
 ?。紁roperty name="columns">
  <asp:buttoncolumn text="選擇" commandname="select" />
 ?。?property>
  代碼中劃線部分的作用是當按了“選擇”按鈕后,執行onselectname()中的程序,把選定的 datagrid中某行中的一個單元中的值(name)存入一個會話變量中,然后轉到下一頁。

 

  增加xml文件內容
  在web form中分別增加相應的四個label(姓名,來自哪里,email地址,留言內容)和四個textbox和一個用于提交的button,并為這button增加如下代碼:
  string datafile = "guest.xml" ;xmldocument xmldocument = new xmldocument() ;
  xmldocument.load(server.mappath(datafile)) ;
  //把guest.xml讀到xmldocument中
  documentnavigator navigator = new documentnavigator(xmldocument) ;
  //最重要的類
  navigator.movetodocumentelement() ;
  navigator.insert(system.xml.treeposition.firstchild, xmlnodetype.element, "guest","","") ;//插入節點guest  
    navigator.insert(system.xml.treeposition.firstchild, xmlnodetype.element, "name","","") ;
  navigator.insert(system.xml.treeposition.firstchild, xmlnodetype.text,"name","","") ;
  navigator.value="/name.text" ;
  //為該節點賦值
  navigator.movetoparent() ;
  //返回父節點 guest
  ……
  //使用同類語句,在元素name下插入另一些元素如country、e-mail地址和留言等
  xmldocument.save(server.mappath(datafile));
  //最后保存這個xml文檔
  navigator=null ;
  xmldocument=null ;
  //釋放xml文檔,這樣其他程序可以用它
  上述代碼使用documentnavigator類增加元素和內容,注意使用后要釋放資源。
  刪除xml文件內容
  刪除選定記錄,對于你上面選擇的節點,下面代碼可查找到該節點并清除選中的信息:
  string datafile = "guest.xml" ;
  xmldocument xmldocument = new xmldocument() ;
  xmldocument.load(server.mappath(datafile)) ;
  //把guest.xml讀到xmldocument中
  documentnavigator navigator = new documentnavigator(xmldocument) ;
  navigator.movetodocumentelement() ;
  navigator.select("/guests/guest[name=""+session["select_name"]+""]");
  //參數是xpath
  navigator.removeselected();
  //執行刪除
  xmldocument.save(server.mappath(datafile));
  //最后保存這個xml文檔
  navigator=null;
  //釋放類
  xmldocument=null ;
  //釋放xml文檔,這樣其他程序可以用它
  如需將xml文件中所有信息清除,使用“navigator.removechildren();”語句即可實現。

 

  結 論
  綜上可知,c#編寫xml應用程序不但快捷而且方便,在編寫asp.net數據庫應用程序時,用xml文件替代一些小的table,能減少許多數據庫存取連接,也能讓其他網絡程序更易使用這些數據。
  目前xml的主要瓶頸在于文件系統的讀出或寫入,故應使用更多內存和緩存方式,如果信息量不是巨大無比且修改量也較小,而瀏覽量巨大的話,使用xml方法將是很好的選擇;相反,如數據量巨大,應考慮使用支持xml的數據庫,無論你使用ado+連接其他數據庫,還是使用sql server,c#中都有直接的類函數可讓這些數據庫中的信息直接和xml交互訪問。



收集最實用的網頁特效代碼!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲成人a级网| 国产成人avxxxxx在线看| 亚洲精品videossex少妇| 亚洲成av人片在线观看香蕉| 中文国产成人精品久久一| 国产一区二区三区精品久久久| 不卡毛片在线看| 亚洲欧美制服第一页| 久久久精品国产网站| 亚洲图片在线综合| 久久人人97超碰精品888| 久久视频精品在线| 91在线精品视频| 国产精品久久久久不卡| 欧美壮男野外gaytube| 久久人人爽人人爽人人片亚洲| 欧美激情亚洲自拍| 亚洲三级av在线| 久久久久久国产精品三级玉女聊斋| 69久久夜色精品国产69| 国产网站欧美日韩免费精品在线观看| 国产亚洲精品91在线| 91在线精品播放| 亚洲男人天堂久| 国产精品视频内| 日韩国产精品视频| 成人午夜小视频| 国产精品∨欧美精品v日韩精品| 国产精品久久婷婷六月丁香| 欧美黄色免费网站| 亚洲一级片在线看| 456国产精品| 97人人做人人爱| 色偷偷噜噜噜亚洲男人的天堂| 国产精品成人久久久久| 国产精品v日韩精品| 久久色免费在线视频| 91在线精品播放| 中文字幕一区二区三区电影| 国产成人拍精品视频午夜网站| 色婷婷久久一区二区| 95av在线视频| 日韩精品亚洲视频| 国产精品看片资源| 亚洲一区二区三区777| 日韩美女主播视频| 日韩国产欧美精品一区二区三区| 亚洲free嫩bbb| 亚洲一区美女视频在线观看免费| 中文字幕视频一区二区在线有码| 成人黄色片在线| 欧美丰满片xxx777| 亚洲电影免费观看高清完整版在线观看| 亚洲精品国产精品国自产在线| 欧美猛交ⅹxxx乱大交视频| 国产精品亚发布| 欧美精品日韩www.p站| 国产精品偷伦一区二区| 欧美精品www在线观看| 亚洲性线免费观看视频成熟| 中文字幕日韩电影| 国内免费精品永久在线视频| 久久手机免费视频| 久久久久女教师免费一区| 国产精品久久综合av爱欲tv| 欧美在线视频导航| 狠狠久久五月精品中文字幕| 91欧美视频网站| 4k岛国日韩精品**专区| 亚洲区在线播放| 欧洲日韩成人av| 亚洲图片欧美日产| 97免费视频在线播放| 国产精品美乳在线观看| 日韩精品亚洲元码| 亚洲激情 国产| 亚洲黄页网在线观看| 欧美激情一二三| 日本不卡免费高清视频| 久久99国产综合精品女同| 成人久久一区二区三区| 免费av在线一区| 久久久久久久久久久久久久久久久久av| 亚洲高清福利视频| 欧美日韩国产色视频| 中文字幕亚洲国产| 欧美精品精品精品精品免费| 国产精品国模在线| 国产一区二区视频在线观看| 国产精品aaaa| 亚洲美女视频网| 久久精品99久久香蕉国产色戒| 国产欧美日韩专区发布| 日韩欧美福利视频| 懂色av一区二区三区| 精品中文字幕视频| 91亚洲国产精品| 国产香蕉97碰碰久久人人| 色婷婷综合久久久久中文字幕1| 神马国产精品影院av| 91网在线免费观看| 日韩av网站大全| 中文字幕精品在线视频| 亚洲国产天堂久久综合| 91久久中文字幕| 美乳少妇欧美精品| 夜夜狂射影院欧美极品| 久久五月情影视| 欧美激情一区二区久久久| 日韩在线观看精品| 欧美激情国产精品| 一本色道久久综合狠狠躁篇的优点| 欧美黄色三级网站| 亚洲自拍另类欧美丝袜| 国产精品普通话| 91精品国产成人| 精品日本高清在线播放| 亚洲电影免费观看| 91中文字幕一区| 久久久精品999| 亚洲视频精品在线| 亚洲激情在线视频| 欧美性xxxx极品高清hd直播| 久久久久久久国产| 国产精品久久一区| 日韩中文字幕免费看| 日韩精品免费电影| 国产精品久久久久免费a∨| 日韩欧美极品在线观看| 国产ts人妖一区二区三区| 欧美最猛性xxxxx(亚洲精品)| 精品美女永久免费视频| 日韩最新中文字幕电影免费看| 日韩欧美在线免费| 国产精品自产拍在线观看| 自拍偷拍亚洲在线| 色噜噜狠狠狠综合曰曰曰88av| 97婷婷涩涩精品一区| 国模私拍视频一区| 亚洲黄色www网站| 欧洲成人免费aa| 国产精品99一区| 国产精品视频久| 97视频在线观看免费高清完整版在线观看| 国产精品一区二区三| 精品福利在线观看| 欧美精品手机在线| 精品国产自在精品国产浪潮| 91免费国产视频| 亚洲国产又黄又爽女人高潮的| 亚洲一区二区三区久久| 国产一区二区三区三区在线观看| 91精品国产91久久久久| 992tv在线成人免费观看| 夜夜嗨av一区二区三区免费区| 夜夜狂射影院欧美极品| 欧美中文字幕在线| 亚洲午夜未满十八勿入免费观看全集| 最近2019年手机中文字幕| 777777777亚洲妇女| 九九精品视频在线观看| 97久久伊人激情网| 日韩久久免费视频| 欧美最猛性xxxxx(亚洲精品)|