閲覧総計:&counter();  (本日:&counter(today);  昨日:&counter(yesterday);)

 XMLデータをLINQ to XMLの機能を用い、データ追加し、結果をGridViewに表示した。
 09/09/06

↓このページを参考にした。(リスト3)
http://itpro.nikkeibp.co.jp/article/COLUMN/20080406/298105/?ST=develop

開発環境:VWD2008
サーバ:Windows Server2003 + .NET Framework3.5

【機能】XMLデータの作成、データ追加を行い、結果をGridViewに表示する。

※XMLデータ udons_makeXml.xml が App_Dataフォルダ内に作成される。

【稼働画面】
#ref(add.JPG);

【AddLinqXml.aspx】[3.5]
 <%@ Page Language="VB" %>
 <!-- System.IO名前空間を追加(File.Exists()メソッド使用の為) -->
 <%@ Import Namespace="System.IO" %>
 
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
 <script runat="server">
 
     Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
         'xmlデータが既に存在する場合
         If File.Exists(Server.MapPath("~/App_Data/udons_makeXml.xml")) = True Then
             Dim xmldoc = XDocument.Load(Server.MapPath("~/App_Data/udons_makeXml.xml"))
 
             '結果のGridViewへの表示
             Dim list = From c In xmldoc.Descendants("商品") _
                 Select _
                     品名 = c.Element("品名").Value, _
                     価格 = c.Element("価格").Value
 
             GridView1.DataSource = list
             GridView1.DataBind()
         End If
     End Sub
 
     Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
         If File.Exists(Server.MapPath("~/App_Data/udons_makeXml.xml")) = False Then
             'xmlデータが存在しない場合
             Dim udonElem As XDocument = New XDocument(New XDeclaration("1.0", "utf-8", "yes"), _
                                         New XElement("商品情報", New XElement("商品", _
                                         New XElement("品名", TextBox1.Text), _
                                         New XElement("価格", TextBox2.Text))))
             udonElem.Save(Server.MapPath("~/App_Data/udons_makeXml.xml"))
 
             '結果のGridViewへの表示
             Dim list = From c In udonElem.Descendants("商品") _
                 Select _
                     品名 = c.Element("品名").Value, _
                     価格 = c.Element("価格").Value
 
             GridView1.DataSource = list
             GridView1.DataBind()
             
         Else
             'xmlデータが存在する場合
             Dim doc As XElement = XElement.Load(Server.MapPath("~/App_Data/udons_makeXml.xml"))
             Dim udon_AddData As XElement = New XElement("商品", _
                                            New XElement("品名", TextBox1.Text), _
                                            New XElement("価格", TextBox2.Text))
             '生成したXMLをルート要素以下に追加する
             doc.Add(udon_AddData)
             doc.Save(Server.MapPath("~/App_Data/udons_makeXml.xml"))
 
             '結果のGridViewへの表示
             Dim list = From c In doc.Descendants("商品") _
                 Select _
                     品名 = c.Element("品名").Value, _
                     価格 = c.Element("価格").Value
 
             GridView1.DataSource = list
             GridView1.DataBind()
            
         End If
     End Sub
     
 </script>
 
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head runat="server">
     <title>データを追加しXMLツリーを生成(LINQ to XML)</title>
 </head>
 <body>
     <form id="form1" runat="server">
     <div>
     
         データを追加しXMLツリーを生成(LINQ to XML) 09/09/06<br />
         うどん品名、うどん単価を入力し、OKをクリックするとXMLデータが追加される。<br />
         <br />
         うどん品名:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
         <br />
         うどん単価:<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> 
         <asp:Button ID="Button1" runat="server" Height="21px" Text="OK" Width="73px" 
             onclick="Button1_Click" />
         <br />
         <br />
         <asp:GridView ID="GridView1" runat="server">
         </asp:GridView>
     
     </div>
     </form>
 </body>
 </html>


【参考にしたページ】
1.生成処理:1からのXMLツリーの生成 08/04/08
http://itpro.nikkeibp.co.jp/article/COLUMN/20080406/298105/?ST=develop


#comment_nospam
#vote(参考になった[0],ふつう[0],参考にならなかった[0])

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS