Avatar billede ullidk Nybegynder
21. april 2005 - 20:55 Der er 8 kommentarer og
1 løsning

Indlæsning af XML fil i DataGrid

Hejsa,

Har flg. script:

<script language="C#" runat="server">
    protected DataSet xmlSet;

    protected void page_load(){
   
        xmlSet = new DataSet();
        xmlSet.ReadXml(Server.MapPath("feed.xml"));
        dg1.DataSource = xmlSet;
        dg1.DataBind();
       
    }
</script>
....
<asp:DataGrid ID="dg1" Runat="server"/>


og følgende XML fil:

<?xml version="1.0" encoding="utf-8" ?>
<campaign>
<txtCampaignName>My Test Campaign</txtCampaignName>
<dteCampaignStartDate>21-04-2005</dteCampaignStartDate>
<dteCampaignEndDate>28-04-2005</dteCampaignEndDate>
<activity>
<txtActivityName>My Test Activity</txtActivityName>
<dteActivityStartDate>21-04-2005</dteActivityStartDate>
<dteActivityEndDate>28-04-2005</dteActivityEndDate>
<txtActivityDescription>Some kind of description</txtActivityDescription>
</activity>
<txtCampaignName>My Test Campaign</txtCampaignName>
<dteCampaignStartDate>21-04-2005</dteCampaignStartDate>
<dteCampaignEndDate>28-04-2005</dteCampaignEndDate>
<activity>
<txtActivityName>My Test Activity</txtActivityName>
<dteActivityStartDate>21-04-2005</dteActivityStartDate>
<dteActivityEndDate>28-04-2005</dteActivityEndDate>
<txtActivityDescription>Some kind of description</txtActivityDescription>
</activity>
</campaign>

Umiddelbart ville jeg jo så mene at mit datagrid ville indeholde samtlige data, men ak nej...får kun flg output:
txtCampaignName_Text
My Test Campaign
My Test Campaign


Hvordan får jeg vist alle data og i den RÆKKEFØLGE som de enkelte elementer/nodes forekommer i XML filen?

På forhånd tak!
Avatar billede burningice Nybegynder
21. april 2005 - 21:07 #1
den xml du har her passer slet ikke til et DataSet... der skal det være udformet på denne måde:

<DataSet>
  <Table>
      <Column1>hej</Column>
      <Column2>med</Column>
  </Table>
  <Table>
      <Column1>hej</Column>
      <Column2>med</Column>
  </Table>
  <Table>
      <Column1>hej</Column>
      <Column2>med</Column>
  </Table>
  <EnAndenTable>
      <Column1>hej</Column>
      <Column2>med</Column>
  </EnAndenTable>
  <EnAndenTable>
      <Column1>hej</Column>
      <Column2>med</Column>
  </EnAndenTable>
  <EnAndenTable>
      <Column1>hej</Column>
      <Column2>med</Column>
  </EnAndenTable>
</DataSet>
Avatar billede ullidk Nybegynder
21. april 2005 - 21:11 #2
Nu kan jeg ikke lave min XML fil om, så kan du i stedet forklare mig hvad jeg så skal bruge, nu da jeg så ikke kan bruge DataSet?
Avatar billede arne_v Ekspert
21. april 2005 - 21:13 #3
Det var vel en oplagt mulighed at læse dit XML dokument ind i en ArrayList eller
ande collection af objekter.
Avatar billede ullidk Nybegynder
21. april 2005 - 21:18 #4
Ja ok...og hvordan gør jeg så det?:-)
Avatar billede arne_v Ekspert
21. april 2005 - 21:21 #5
Læser filen ind i et XmLDocument og løber det igennem vil jeg tro
Avatar billede ullidk Nybegynder
21. april 2005 - 21:22 #6
Fair nok, jeg prøver mig frem...
Avatar billede snepnet Nybegynder
22. april 2005 - 10:06 #7
hvis du binder til den sidste tabel i datasættet sådan her :

    protected void page_load(){
 
        xmlSet = new DataSet();
        xmlSet.ReadXml(Server.MapPath("feed.xml"));
        dg1.DataSource = xmlSet.Tables[3]; // du får tabel nummer 4 her
        dg1.DataBind();
     
    }

er det en udmærket aktivitetstabel du får ud af det.... alle disse :

<txtCampaignName>
<dteCampaignStartDate>
<dteCampaignEndDate>
<activity>

vil blive oprettet tabeller i datasættet.

mvh
Avatar billede ullidk Nybegynder
22. april 2005 - 18:27 #8
Super snepnet! Stik et svar, så skal du få points!
Avatar billede snepnet Nybegynder
22. april 2005 - 19:43 #9
ihh dog :o) - så får du da sådan et.
mvh
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester