Так что у меня есть этот код парсинга XML-файлов. Что мне нужно сделать, это проверить значения, которые находятся в пределах диапазона и выписать, если он пройдет / не удастся. Я не уверен, что мой код: «где» утверждения верны. Мне нужен код для поиска "Max" и "Min" каждого оператора и для записи, например, XMax, значение меньше, чем 287, которое оно передало, и больше, чем не удалось.
string[] fileEntries = Directory.GetFiles(@"c:\Sciclone UAC", "*.cfg*");
foreach (string fileName in fileEntries)
{
var query = from file in fileEntries
let doc = XDocument.Load(file)
let x = doc.Descendants("XAxisCalib").Single()
where (int)x.Attribute("Max") > 287
where (int)x.Attribute("Min") < -50
let y = doc.Descendants("YAxisCalib").Single()
where (int)y.Attribute("Max") > 645
where (int)y.Attribute("Min") > -87
let z = doc.Descendants("ZAxisCalib").Single()
where (int)z.Attribute("Max") > 20
where (int)z.Attribute("Min") > -130
select new
{
XMax = x.Element("Max").Value,
XMin = x.Element("Min").Value,
YMax = y.Element("Max").Value,
YMin = y.Element("Min").Value,
ZMax = z.Element("Max").Value,
ZMin = z.Element("Min").Value
};
Вот пример того, как выглядит один XML-файл:
<XAxisCalib>
<Max>281.68</Max>
<Min>-46.79</Min>
</XAxisCalib>
<YAxisCalib>
<Max>570.57</Max>
<Min>-123.24</Min>
</YAxisCalib>
<ZAxisCalib>
<Max>31.01</Max>
<Min>-100.95</Min>