1

私はxmlドキュメントを持っており、動的になります。ノードの取得に問題はありませんが、各ノードの属性を取得したいと思います。私が試したすべての結果が得られませんでした。

私のXML:

<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <Questionnaire>   <clientID>1036</clientID>   <QuestForm Desc="דוגמא" ID="1" Info="הסבר לגבי השאלון לדוגמא">
    <Subject Desc="כללי" ID="1" Info="הסבר לנושא כללי" NP="N" Num="1" TableRows="3">
      <Title Desc="מופע 1" ID="1"></Title>
      <Title Desc="מופע 2" ID="2"></Title>
      <Title Desc="מופע 3" ID="3"></Title>
      <Question Desc="טקסט חופשי" ID="1" Type="ט"></Question>
      <Question Desc="תאריך" FromDate="00/00/0000" ID="2" ToDate="31/12/2999" Type="ת"></Question>
      <Question Desc="שעה" FromTime="00:00:00" ID="3" ToTime="24:00:00" Type="ש"></Question>
      <Question Desc="מספר" FromN="1.00" ID="4" IntN="0.00" ToN="10.00" Type="מ"></Question>
      <Question Desc="בחירה" ID="5" Type="ב">
        <Answer Desc="תשובה 1" ID="1"></Answer>
        <Answer Desc="תשובה 2" ID="2"></Answer>
      </Question>
      <Question Desc="שפות דיבור בחירה מרובה" ID="6" Type="ר">
        <Answer Desc="עברית" ID="1"></Answer>
        <Answer Desc="אנגלית" ID="2"></Answer>
        <Answer Desc="רוסית" ID="3"></Answer>
      </Question>
    </Subject>
    <Subject Desc="חו&quot;ל" ID="2" Info="הסבר לנושא חול" NP="N" Num="2">
      <Question Desc="נסיעות לחול" FromN="0.00" ID="1" IntN="0.00" ToN="0.00" Type="מ"></Question>
      <Question Desc="מדינות מועדפות" ID="2" Type="ר">
        <Answer Desc="ארצות הברית" ID="1"></Answer>
        <Answer Desc="אנגליה" ID="2"></Answer>
        <Answer Desc="אוסטרליה" ID="3"></Answer>
        <Answer Desc="רוסיה" ID="4"></Answer>
      </Question>
    </Subject>
    <Subject Desc="נושא חברתי" ID="3" NP="N" Num="3">
      <Question Desc="כמה חברים יש לך" FromN="1.00" ID="1" IntN="0.00" ToN="100.00" Type="מ"></Question>
      <Question Desc="באיזה רשת חברתית אתה משתמש" ID="2" Type="ר">
        <Answer Desc="FACEBOOK" ID="1"></Answer>
        <Answer Desc="LINKEDIN" ID="2"></Answer>
        <Answer Desc="TWITER" ID="3"></Answer>
      </Question>
      <Question Desc="נולדת בארץ" ID="3" Type="ל"></Question>
      <Question CondID="3" Desc="ישוב לידה" ID="4" Type="ט"></Question>
    </Subject>   </QuestForm>
    <Muamad Email="ORANI4U@GMAIL.COM" Event="28" ID="36130" Name="א אורן"></Muamad>

</Questionnaire>

すべてのサブジェクトとその属性を取得したいコード:

IEnumerable<QuestionnnaireSubject> subjects = from input in xml.Descendants("Subject")
    select new QuestionnnaireSubject()
    {                                         
        Description = 
        ID = 
    }; 
return subjects.ToList();
4

1 に答える 1

2

要素の属性を取得するには、XElement.Attribute(XName)ouを使用しXElement.Attributes()ます。

var subjects = from subjectElement in xml.Descendants("Subject")
               select new QuestionnnaireSubject()
               {                                         
                   Description = (string)subjectElement.Attribute("Desc")
                   ID = (int)subjectElement.Attribute("ID").Value
               }; 

使用する:

次のものもあります。

于 2013-07-24T11:33:39.770 に答える