0

Webサービスからwp7アプリページにテーブルを取得する方法はありますか? データを取得するたびにテーブルを作成するよりも使いやすくしたいだけです

4

1 に答える 1

0

System.Xml名前空間についてはMSDNを参照してください。使用可能なクラスがたくさん含まれています。XmlReaderまたは類似のものを使用して、配列またはジェネリックコレクションにロードする必要があります。これがお役に立てば幸いです。

編集:

これは、サンプルデータをジェネリックコレクションにロードするために行ったコードです。

サンプルデータ:

<?xml version="1.0" encoding="utf-8" ?>
 <studentPunishmentsTables>
  <studentPunishmentsTable>
    <fromSemester/>
    <fromSemesterDesc/>
    <issueDate>01/04/2012</issueDate>
    <note/>
    <penalty>Course Failure</penalty>
    <semester>311</semester>
    <semesterDesc>First Semester 31/32</semesterDesc>
    <toSemester/>
    <toSemesterDesc/>
  </studentPunishmentsTable>
  <studentPunishmentsTable>
    <fromSemester/>
    <fromSemesterDesc/>
    <issueDate>01/04/2012</issueDate>
    <note/>
    <penalty>Semester Failure</penalty>
    <semester>311</semester>
    <semesterDesc>First Semester 31/32</semesterDesc>
    <toSemester/>
    <toSemesterDesc/>
  </studentPunishmentsTable>
</studentPunishmentsTables>

コード:

using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.IO;

namespace XMLStudent
{
    class Program
    {
        static void Main(string[] args)
        {
            XmlDocument doc = new XmlDocument();
            doc.Load("st.xml");
            List<StudentPunishment> sp = new List<StudentPunishment>();
            foreach (XmlNode nod in doc.SelectNodes(@"studentPunishmentsTables/studentPunishmentsTable"))
            {
                StudentPunishment s = new StudentPunishment();
                s.FromSemester = nod.ChildNodes[0].InnerText;
                s.FromSemesterDesc = nod.ChildNodes[1].InnerText;
                s.IssueDate = nod.ChildNodes[2].InnerText;
                s.Note = nod.ChildNodes[3].InnerText;
                s.Penalty = nod.ChildNodes[4].InnerText;
                s.Semester = nod.ChildNodes[5].InnerText;
                s.SemesterDesc = nod.ChildNodes[6].InnerText;
                s.ToSemester = nod.ChildNodes[7].InnerText;
                s.ToSemesterDesc = nod.ChildNodes[8].InnerText;
                sp.Add(s);
            }
            Console.WriteLine(sp[0].IssueDate);
            Console.Read();
        }
    }
    class StudentPunishment
    {
        public string FromSemester { get; set; }
        public string FromSemesterDesc { get; set; }
        public string IssueDate { get; set; }
        public string Note { get; set; }
        public string Penalty { get; set; }
        public string Semester { get; set; }
        public string SemesterDesc { get; set; }
        public string ToSemester { get; set; }
        public string ToSemesterDesc { get; set; }
    }
}

それで。このコードは、サンプルデータを含むXMLDocumentをロードし、各studentPunishmentsTableのデータをStudentPunishmentクラスの新しいオブジェクトに選択します。そのデータを保持するためのプロパティがあります。すべてが完了し、学生の罰のオブジェクトがジェネリックコレクション(「リスト」)に追加された後、コードはコレクションの最初のオブジェクトの日付を表示しようとします。あなたはあなた自身でテストすることができます、それは私のために働いています。

于 2012-05-06T08:44:01.663 に答える