clodetta
03.11.2008, 13:13
Hallohalli,
ich verzweifel hier grad :mauer:
und zwar hab ich folgendes xml:
<?xml version="1.0" encoding="ISO-8859-1"?>
<DataSetContainer>
<DataSet CategoryID="Seminars">
<seminar>
<date>01.10.2008</date>
<dueto>01.10.2009</dueto>
<topic>Hannover Sitzung</topic>
</seminar>
</DataSet>
<DataSet CategoryID="Other">
<seminar>
<date>01.11.2008</date>
<dueto>01.10.2009</dueto>
<topic>Hamburg Kulturcafe</topic>
</seminar>
</DataSet>
</DataSetContainer>
so, ich möchte jetz via xquery alle vorhandenen DataSet-nodes durchgehen und mir den Wert des Attributes CategoryID holen und in die dropdownlist CategorySelector zu schieben.
folgenden source habbich:
XQueryNavigatorCollection XQColl = new XQueryNavigatorCollection();
XQColl.AddNavigator(Server.MapPath("seminars.xml"), "seminars");
string query = "let $event-doc := document('seminars') " +
"For $d in $event-doc/DataSetContainer/BoberskiDataSet[CategoryID] " +
"return $d ";
XQueryExpression expr = new XQueryExpression(query);
CategorySelector.Items.Add((expr.Execute(XQColl)).ToXml());
daß das so noch nich funzen kann is mir klar, da expr.Execute(XQColl)).ToXml()
ja einen string zurückliefert.
das zum einen.
aber ich wäre froh, wenn er mal überhaupt was zurückliefern würde, denn diese testteile hier erhalten mal goar nix zurückgeliefert, was mich sehr ärgert:
Literal1.Text = expr.Execute(XQColl).ToXml();
string results = expr.Execute(XQColl).ToXml();
Response.Write(results);
was mach ich denn falsch (mal abgesehen davon, nicht LINQ dafür zu benutzen, denn da werden die queries ja vorher compiliert und - bei fehlerhaftem code - ja auch bemängelt...) ???
:confused:
liebe grüsse,
die clodetta
edit:
achso, folgende query half auch nicht
string query = "let $event-doc := document('seminars') " +
"For $d in $event-doc/DataSetContainer/BoberskiDataSet " +
"return $d/@CategoryID ";
ich verzweifel hier grad :mauer:
und zwar hab ich folgendes xml:
<?xml version="1.0" encoding="ISO-8859-1"?>
<DataSetContainer>
<DataSet CategoryID="Seminars">
<seminar>
<date>01.10.2008</date>
<dueto>01.10.2009</dueto>
<topic>Hannover Sitzung</topic>
</seminar>
</DataSet>
<DataSet CategoryID="Other">
<seminar>
<date>01.11.2008</date>
<dueto>01.10.2009</dueto>
<topic>Hamburg Kulturcafe</topic>
</seminar>
</DataSet>
</DataSetContainer>
so, ich möchte jetz via xquery alle vorhandenen DataSet-nodes durchgehen und mir den Wert des Attributes CategoryID holen und in die dropdownlist CategorySelector zu schieben.
folgenden source habbich:
XQueryNavigatorCollection XQColl = new XQueryNavigatorCollection();
XQColl.AddNavigator(Server.MapPath("seminars.xml"), "seminars");
string query = "let $event-doc := document('seminars') " +
"For $d in $event-doc/DataSetContainer/BoberskiDataSet[CategoryID] " +
"return $d ";
XQueryExpression expr = new XQueryExpression(query);
CategorySelector.Items.Add((expr.Execute(XQColl)).ToXml());
daß das so noch nich funzen kann is mir klar, da expr.Execute(XQColl)).ToXml()
ja einen string zurückliefert.
das zum einen.
aber ich wäre froh, wenn er mal überhaupt was zurückliefern würde, denn diese testteile hier erhalten mal goar nix zurückgeliefert, was mich sehr ärgert:
Literal1.Text = expr.Execute(XQColl).ToXml();
string results = expr.Execute(XQColl).ToXml();
Response.Write(results);
was mach ich denn falsch (mal abgesehen davon, nicht LINQ dafür zu benutzen, denn da werden die queries ja vorher compiliert und - bei fehlerhaftem code - ja auch bemängelt...) ???
:confused:
liebe grüsse,
die clodetta
edit:
achso, folgende query half auch nicht
string query = "let $event-doc := document('seminars') " +
"For $d in $event-doc/DataSetContainer/BoberskiDataSet " +
"return $d/@CategoryID ";