У меня есть XML-файл, подобный этому.LINQ to XML Получить все имена узлов из файла
Parent
-Value
-Value
-Child
--Value
--Value
---Grandchild
----Value
---GrandchildEND
-ChildEND
-Value
-Child2
......
Структура файла XML является переменной. Значит, у каждого XML есть разные Childs, Grandchilds и т. Д. Я хочу открыть XML-файл и ввести данные из XML-файла в базу данных MYSQL.
Здесь код, который я использую для открытия XML и ввода информации в MySQL.
while (hardcore < 50000)
{
try
{
XDocument xmlDoc2 = XDocument.Load("c:\\a.xml");
var simpleQuery2 = (from Mainparent in xmlDoc2.Descendants("Mainparent")
select Mainparent).FirstOrDefault();
dbcon.Insert
(
simpleQuery2.Element("id").Value,
simpleQuery2.Element("action").Value,
simpleQuery2.Element("ordernr").Value,
simpleQuery2.Element("typ").Value,
simpleQuery2.Element("orderdate").Value,
simpleQuery2.Element("p4code").Value,
simpleQuery2.Element("runtime").Value,
);
}
catch (NullReferenceException)
{
textBox1.Text = "did a stupid mistake mofo";
}
hardcore++;
}
информацию из "simpleQuery2.Element (" ID "). Значение" представляет собой значение, которое хранится в MainParent.
Моя проблема в настоящее время:
Я не могу быть уверен, какие значения/Чайлдс/.. есть внуков в файле XML. Чтобы успешно импортировать его в MySQL, мне нужно будет импортировать все элементы по каждому из них, иначе я получаю сообщение об ошибке, и импорт не работает.
Мне нужно знать Parent/Valuename/Value или Parent/Child/Valuename/value. , потому что Parent/Valuename/Value будут импортированы в таблицу «PARENT» , а родитель/ребенок/имя_валюты/значение будут импортированы в таблицу «CHILD».
Если я знаю, какие дети/внуки, я знаю, какие значения ожидать.
Я уже могу получить полный список элемента с:
XDocument xmlDoc2 = XDocument.Load("c:\\a.xml");
foreach (var name in xmlDoc2.Root.DescendantNodes().OfType<XElement>()
.Select(x => x.Name).Distinct())
{ textBox1.Text = textBox1.Text + "\r\n"+name; }
Так [Что вы пробовали] (http://mattgemmell.com/2008/12/08/what-have-you-tried/), чтобы сделать в коде (покажите нам код, пожалуйста)? –
Вы должны быть конкретными в том, что вы просите. Покажите нам XML. Покажите нам, что вы хотите выбраться из него. Покажите нам, что вы пробовали. – yamen
Я попытался получить список узлов с помощью xelement, но этот вид не работал. поскольку он говорит мне, что xmlDoc2.Attributes() невозможен. Извините, не могу опубликовать XML, так как у меня нет на самом деле одного. Я просто получил описание структуры. – mahxds