var records = (from root in myxmlDoc.Descendants("Root")
from nts in root.Elements("nts")
select new
{
Id = (nts.Elements("Id").Any() == true) ? (nts.Element("Id").Value) : string.Empty,
Name = (nts.Elements("Name").Any() == true) ? (nts.Element("Name").Value) : string.Empty,
}).ToList();
mehr Kind, das, wie ich diese Elemente mit <Round>
hier <Round>
achive kann, wird mehr Male nicht fest Zahl sein AM hat auch in der Nähe von dynamischen Aufzeichnungen nehmen Datumwie Kind einzelne Datensätze zu erhalten, basierend auf mehrere Bedingung Knoten C# Linq oder XPath
<Root>
<nts>
<Id>A</Id>
<Name>Rahul</Name>
<Round>
<prodDate>2016-03-31</prodDate>
<roundDue>0.00</roundDue>
</Round>
<Round>
<prodDate>2016-04-01</prodDate>
<roundDue>400.00</roundDue>
</Round>
<Round>
<prodDate>2016-05-01</prodDate>
<roundDue>300.00</roundDue>
</Round>
<Round>
<prodDate>2016-08-06</prodDate>
<roundDue>100.00</roundDue>
</Round>
<nts>
</Root>
ich möchte von mehreren <Round>
Element basierend auf folgenden Kriterien Einzel <Round>
Datensatz nehmen
- 1) prodDate weniger als dynamicDate dh: 2016.09.29 und roundDue> 0 Hinweis:
<Round>
Datensatz muss letzten Datensatz kleiner sein als die dynamicDate dh 2016-09-29
Erwartetes Ergebnis:
ID : A;
Name : Rahul
prodDate : 2016-08-06
roundDue : 100.00
hier prodDate muss spätestens näher Datum dynamicDate sein dh 2016-09-29
Was hast du, das funktioniert nicht? – Kilazur
Es klingt wie Sie haben zwei tatsächliche * Filter * (Datum weniger als 2016-09-29, und roundDue größer als 0), und dann eine Bestellung (nach Datum, absteigend). Sie können dann das erste Ergebnis aus dieser geordneten Ergebnismenge nehmen. –
Ich habe meinen Code eingefügt Ich habe keine Ahnung, wie kann ich das erreichen –