Problemer med load af XML til DataSet
hejsa,Jeg står og har lidt XML problemer som jeg håber i kan hjælpe mig med :)
Jeg stod og havde lavet en løsning, som læste noget XML ind fra en fil - og dette fungerede som sådan også fint nok (herunder ses dette eksempel):
ataSet XmlDataSet = new DataSet();
XmlDataSet.ReadXml(HttpContext.Current.Server.MapPath("~/test.xml"));
DataTable XmlDataTable = new DataTable();
XmlDataTable = XmlDataSet.Tables["Fields"];
DataTable NewXmlTable = new DataTable("Results");
DataSet NewXmlFile = new DataSet();
DataRow NewXmlRow = NewXmlTable.NewRow();
NewXmlTable.Columns.Add("Form");
NewXmlRow[NewXmlTable.Columns[0].Caption] = xmlForm;
for (int i = 0; i < XmlDataTable.Rows.Count; i++)
{
.
.
.
}
Det fungerer som sagt fint!
Jeg er nu kommet i den situation, at jeg skal gemme min XML i en database. Dette har jeg også gjort, men når det så skal læses ud igen i ovenstående tilfælde, så volder det mig problemer.
Jeg læser det ud i et XmlDataDocument (form er min FormController, som står for at hente ting ud):
XmlDataDocument XmlFromDB = new XmlDataDocument();
XmlFromDB.LoadXml(form.GetFormXmlById(Convert.ToInt32(formId)));
Det læser XML ud på formen:
<NewDataSet>
<Fields>
<Control>TextBox</Control>
<Data>String</Data>
<Required>Yes</Required>
<Order>1</Order>
<Label>Navn</Label>
<Id>Navn</Id>
<Text />
</Fields>
<Fields>
<Control>TextBox</Control>
<Data>String</Data>
<Required>Yes</Required>
<Order>2</Order>
<Label>Adresse</Label>
<Id>Adresse</Id>
<Text />
</Fields>
<Fields>
<Control>TextBox</Control>
<Data>Integer</Data>
<Required>Yes</Required>
<Order>3</Order>
<Label>Mobil nr.</Label>
<Id>mobil</Id>
<Text />
</Fields>
</NewDataSet>
Jeg har så ændret linien, fra forrige eksempel til:
XmlDataTable = XmlFromDB.DataSet.Tables["Fields"];
problemet opstår dog når den kommer ned i for-løkken. Der siger den at "objekt referencen ikke er indstillet til forekomsten af et objekt".
Nu er det så jeg gerne vil høre, hvad jeg gør galt?