Dobrý den, dělám práci do školy a už nevím jak mám pokračovat, potřebuju načíst XML dokument a následně pomocí elementu Titul, Čas, Datum v klauzuli where, načíst příslušnou řadu a sedadlo. XML soubor:
<?xml version="1.0" encoding="UTF-8"?>
<Rezervace xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="kino.xsd">
<Sal>
<Rada>4</Rada>
<Sedadlo>4</Sedadlo>
<Cas>14:00:00</Cas>
<titul>Hobbit</titul>
<Klient>
<Udaje>
<Jmeno>Pepa</Jmeno>
<Prijmeni>Horáček</Prijmeni>
<Telefon>2049439349</Telefon>
<Mail>[email protected]</Mail>
<Datum year="2013" month="1" day="21"/>
</Udaje>
</Klient>
<Titul>
<Nazev>Hobbit</Nazev>
<triD>true</triD>
<Zanr>Fantasy</Zanr>
</Titul>
</Sal >
V C# vyvářím dynamická tlačítka přestavující sedadlo v kině. A pomocí datumu času a titulu, potřebuji zjistit rozložení sálu. Kód v C#:
{
CreateButton();
/*XDocument file = XDocument.Load("Data\\kino.xml");
foreach (XElement b in file.Element("Rezervace").Elements("Sal"))
{
int sedadlo_rada;
int mez;
string sedadla;
citac += 1;
hodnota1 = b.Element("Rada").Value.Trim();
hodnota2 = b.Element("Sedadlo").Value.Trim();
mez = Convert.ToInt32(hodnota1) - 1;
sedadla = Convert.ToString(mez) + hodnota2;
sedadlo_rada = Convert.ToInt32(sedadla);
myButtons[sedadlo_rada].BackColor = Color.Red;
if (myButtons[sedadlo_rada].BackColor == Color.Red)
{
myButtons[sedadlo_rada].Enabled = false;
}
*/
int sedadlo_rada = 0;
int mez = 0;
string sedadla = String.Empty ;
XDocument xmlDoc = XDocument.Load("Data\\kino.xml");
var cteni = from game in xmlDoc.Descendants("Sal")
where game.Element("titul").Value == comboBox2.SelectedItem.ToString()
select new
{
Title = game.Element("titul").Value,
hodnota1 = game.Element("Rada").Value.Trim() ,
hodnota2 = game.Element("Sedadlo").Value.Trim(),
};
foreach (var vl in cteni)
{
try
{
mez = Convert.ToInt32(vl.hodnota1) - 1;
sedadla = Convert.ToString(mez) + vl.hodnota2;
sedadlo_rada = Convert.ToInt32(sedadla );
myButtons[sedadlo_rada].BackColor = Color.Red;
if (myButtons[sedadlo_rada].BackColor == Color.Red)
{
myButtons[sedadlo_rada].Enabled = false;
}
}
catch (Exception exc)
{
}
}
Nevím jak načíst položku datum a porovnat zároveň s titulem a časem. Děkuju moc, já jsem v koncích.
|