-2

目標として 3 つのエンティティがあります。タスクとリマインダー。エンティティごとに、個別のデータテーブルがあります。今、私は以下のようなxmlを生成したい

<PDPData>
  <Goal>
    <TypeId>300</TypeId>
    <NAME>Smart Goal #</NAME>
    <Task>
      <TypeId>11</TypeId>
      <NAME>Task1</NAME>
    </Task>
    <Task>
      <TypeId>12</TypeId>
      <NAME>Task2</NAME>
    </Task>
    <Reminder>
      <TypeId>11</TypeId>
      <NAME>Reminder1</NAME>
    </Reminder>
    <Reminder>
      <TypeId>12</TypeId>
      <NAME>Reminder2</NAME>
    </Reminder>
  </Goal>
</PDPData>

どうすればこれを達成できますか。以下のコードで試しましたが、子を1つだけ追加しましたが、追加して目標内に置きたいです

XmlElement hedder = docConfig.CreateElement("Goal");
docConfig.DocumentElement.PrependChild(hedder);
docConfig.ChildNodes.Item(0).AppendChild(hedder);

// Create <installationid> Node
XmlElement installationElement = docConfig.CreateElement("TypeId");
XmlText installationIdText = docConfig.CreateTextNode(dtGoals.Rows[goalCount]["TypeId"].ToString());
installationElement.AppendChild(installationIdText);
hedder.AppendChild(installationElement);

// Create <environment> Node
XmlElement environmentElement = docConfig.CreateElement("NAME");
XmlText environText = docConfig.CreateTextNode(dtGoals.Rows[goalCount]["Name"].ToString());
environmentElement.AppendChild(environText);
hedder.AppendChild(environmentElement);
4

2 に答える 2

0
[Serializable()]    //Set this attribute to all the classes that want to serialize
public class Employee : ISerializable 
{
    public int EmpId;
    public string EmpName;

    //Default constructor
    public Employee()
    {
        EmpId = 0;
        EmpName = null;
    }
}

 XmlSerializer serializer = new XmlSerializer(typeof(Employee));
 TextWriter writer = new StreamWriter(filename);
 Employee objEmp = new Employee();
 serializer.Serialize(writer, objEmp);
 writer.Close();
于 2013-04-11T07:30:11.023 に答える
-2
using System; 
public class clsPerson {
     public string FirstName; 
     public string MI;
     public string LastName;
 } 

class class1 {
 static void Main(string[] args)
 { clsPerson p=new clsPerson(); p.FirstName = "Jeff"; p.MI = "A"; p.LastName = "Price"; System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(p.GetType()); x.Serialize(Console.Out, p); Console.WriteLine();
 Console.ReadLine(); } } 

フォーマットについて申し訳ありませんが、電話から投稿されました。

于 2013-04-11T06:52:46.627 に答える