I would like to know what would be the best way to remove XML without without attributes in C# .NET. I am currently trying to use: System.Xml and System.Xml.XPath but cannot get it to work.
public String lstToTxt; private void delReminder_Click(object sender, EventArgs e) { string lstIn; int intselectedindex = lstVxmlin.SelectedIndices[0]; if (intselectedindex >= 0) { lstIn = lstVxmlin.SelectedItems[0].ToString(); lstToTxt = lstVxmlin.Items[intselectedindex].Text; } Console.WriteLine(lstToTxt); //TEST: var returns e.g. = Green Mint //Delete XML. XDocument xdoc = XDocument.Load("Resources\\SavedReminders.xml"); xdoc.Descendants("Reminder") .Where(x => (string)x.Element("PlantName") == lstToTxt) .Remove(); } The XML is below:
<?xml version='1.0' encoding='utf-8'?> <Reminders> <Reminder> <PlantName>Swedes</PlantName> <SowInDoorsDate>N/A</SowInDoorsDate> <SowUnderCoverDate>N/A</SowUnderCoverDate> <SowOutDoorsDate>12/02</SowOutDoorsDate> <PlantOutDoors>N/A</PlantOutDoors> <HarvestTimeDate>20/05</HarvestTimeDate> <Notes>N/A</Notes> <PlotNumber>0</PlotNumber> </Reminder> <Reminder> <PlantName>Green Mint</PlantName> <SowInDoorsDate>05/05</SowInDoorsDate> <SowUnderCoverDate>N/A</SowUnderCoverDate> <SowOutDoorsDate>N/A</SowOutDoorsDate> <PlantOutDoors>N/A</PlantOutDoors> <HarvestTimeDate>07/6</HarvestTimeDate> <Notes>N/K</Notes> <PlotNumber>0</PlotNumber> </Reminder> <Reminder> <PlantName>Turnips</PlantName> <SowInDoorsDate>05/03</SowInDoorsDate> <SowUnderCoverDate>N/A</SowUnderCoverDate> <SowOutDoorsDate>N/A</SowOutDoorsDate> <PlantOutDoors>N/A</PlantOutDoors> <HarvestTimeDate>07/4</HarvestTimeDate> <Notes>N/K</Notes> <PlotNumber>0</PlotNumber> </Reminder> </Reminders>
No comments:
Post a Comment