להעביר XML ל DATASET ולהיפך

ofer_c33

New member
להעביר XML ל DATASET ולהיפך

אני עובד ב ASP.NET יש לי XML שבנוי בצורה הבאה:
<?xml version="1.0" encoding="utf-8" ?> <menus> <file name="AvivMenuConfig.xml"/> <AppTitle name="מערכת אביב" displayed="1" IdCounter="19" deleted="n" > <menu id="tdAM1" deleted="n" desc="מודול פיננסי" action="RunAviv('tdAM1')" class="MenuAnchor" path="X:\cde95.132\BIN\AvivFin.lnk" displayed="1" picture="Images/dot.gif"/> <menu id="tdAM2" deleted="n" desc="מודול לוגיסטי" action="RunAviv('tdAM2')" class="MenuAnchor" path="X:\cde95.132\BIN\AvivLogistic.lnk" displayed="1" picture="Images/dot.gif"/> </AppTitle> <InfoTitle name="חוברת הדרכה" displayed="1" deleted="n" > <menu id="tdAM6" action="SelectItem('tdAM6')" deleted="n" desc="חלק א" path="file:///F:/accgui/HELP/menu.htm" class="MenuAnchor" displayed="1" picture="Images/dot.gif"/> <menu id="tdAM7" action="SelectItem('tdAM7')" deleted="n" desc="חלק ב" path="file:///G:\MLAI\LogisticPresentation\Navigator.xml" class="MenuAnchor" displayed="1" picture="Images/dot.gif"/> </InfoTitle> </menus>​
אני ורצה להעביר את התוכן של הקובץ XML לתוך DATASET לאפשר לעדכן (לדעת להעביר חזרה מה DATASET ל XML ) איך עושים את זה?
 

ofer_c33

New member
יש לי בעיה בהעברה של ה XML ל דטה סט

אם ה XML נראה כך :
<?xml version="1.0" encoding="utf-8" ?> <menus> <menu id="tdAM1" name="one"/> <menu id="tdAM2" name="two"/> </menus>​
אז השליפה מתבצעת בצורה טובה אבל אם זה נראה כך:
<?xml version="1.0" encoding="utf-8" ?> <menus> <AppTitle name="מערכת א"> <menu id="tdAM1" name="one"/> <menu id="tdAM2" name="two"/> </AppTitle> </menus>​
אז הוא שולף רק את
<AppTitle name="מערכת א">​
ולא את כל מה שתחתיו ואם ה XML נראה כך
<?xml version="1.0" encoding="utf-8" ?> <menus> <AppTitle name="מערכת א"> <menu id="tdAM1" name="one"/> <menu id="tdAM2" name="two"/> </AppTitle> <SecondTitle name="מערכת א"> <menu id="tdAM11" name="one22"/> <menu id="tdAM22" name="two22"/> </SecondTitle > </menus>​
אז בכלל הוא מביא טעות זהו , זה ארוך אבל אני מקווה שהבנתם ותוכלו לעזור תודה
 

ofer_c33

New member
אז ככה

ה טעות היא:
Exception Details: System.ArgumentException: The same table (menu) cannot be the child table in two nested relations. Source Error: Line 45: new System.Xml.XmlTextReader(fsReadXml); Line 46: // Read the XML document into the DataSet. Line 47: ds.ReadXml(myXmlReader); Line 48: // Close the XmlTextReader Line 49: myXmlReader.Close();​
והקוד של ה ASP הוא
System.IO.FileStream fsReadXml = new System.IO.FileStream (Server.MapPath("myXMLFile.xml"), System.IO.FileMode.Open); System.Xml.XmlTextReader myXmlReader = new System.Xml.XmlTextReader(fsReadXml); ds.ReadXml(myXmlReader); myXmlReader.Close();​
 
למעלה