Ajax基礎原理例子PART.II

來源:互聯網
上載者:User
平常我們使用的TeachSamples資料庫中有一個bbc_country表,現在要求使用Ajax技術做一個應用:製作一個html頁面,能夠無重新整理的反應bbc_country表中的資料變化,包括反映每條記錄的添加、刪除、修改,還要能實現根據不同的條件,無重新整理的在html頁面中顯示不同的查詢結果。

具體的例子,可以參見 http://www.koonsoft.net/samples/ajax/bbc_country.html,在點擊按鈕後請注意看該頁面的源檔案內容是否發生了變化。

請注意上面的樣本並不完善:

1、這個例子本身的資料來源於 http://www.koonsoft.net/samples/ajax/bbc_country.xml,但這個資料來源 是不會變化的,並沒有達到反映資料變化的要求

2、這個例子沒有實現按Region不同來重新載入資料。

如何從資料庫中讀出資料並產生XML,我提供了一個C#控制台應用程式,供大家參考:

Code
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Text;
using System.Xml;

namespace GetXml
{
    public class Program
    {
        static void Main(string[] args)
        {
            SqlConnection sqlconn = new SqlConnection();
            sqlconn.ConnectionString = "Password=*******;Persist Security Info=True;User ID=sa;Initial Catalog=TeachSamples;Data Source=127.0.0.1";

            SqlCommand sqlcmd = new SqlCommand();
            sqlcmd.CommandText = "select * from bbc_country order by name";
            sqlcmd.Connection = sqlconn;

            XmlWriter writer = null;

            try
            {

                // Create an XmlWriterSettings object with the correct options. 
                XmlWriterSettings settings = new XmlWriterSettings();
                settings.Indent = true;
                settings.IndentChars = ("\t");
                settings.OmitXmlDeclaration = false;

                // Create the XmlWriter object and write some content.
                writer = XmlWriter.Create("bbc_country.xml", settings);
                
                writer.WriteStartDocument();
                writer.WriteStartElement("Countries");
                
                try
                {
                    sqlcmd.Connection.Open();
                    SqlDataReader sqlrd = sqlcmd.ExecuteReader();
                    while (sqlrd.Read())
                    {
                        writer.WriteStartElement("Country");
                        writer.WriteStartElement("Name");
                        writer.WriteString(sqlrd["Name"].ToString());
                        writer.WriteEndElement();
                        writer.WriteStartElement("Region");
                        writer.WriteString(sqlrd["Region"].ToString());
                        writer.WriteEndElement();
                        writer.WriteStartElement("Area");
                        writer.WriteString(sqlrd["Area"].ToString());
                        writer.WriteEndElement();
                        writer.WriteStartElement("Population");
                        writer.WriteString(sqlrd["Population"].ToString());
                        writer.WriteEndElement();
                        writer.WriteStartElement("GDP");
                        writer.WriteString(sqlrd["GDP"].ToString());
                        writer.WriteEndElement();
                        writer.WriteEndElement();
                    }
                }
                finally
                {
                    sqlcmd.Connection.Close();
                }
               
                writer.WriteEndElement();
                writer.WriteEndDocument();

                writer.Flush();
            }
            finally
            {
                if (writer != null)
                    writer.Close();
            }
        }
    }

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.