Tach!
Ich suche nun einen einfachen Weg, in dem resultierten Objekt und an der Stelle, wo das erste Datum endet und das zweite anfängt, ein null-Objekt hinzuzufügen:
Ich behaupte mal, das geht (so) nicht. Die Anzahl der Datensätze in der Ergebnismenge steht nach dem Where *) fest. Das Select kann weder was hinzufügen, noch etwas entfernen. Nur umformen kann es. Und dies kann es nur mit dem aktuellen Datensatz. Es kann nicht in die Zukunft schauen. Ein Blick in die Vergangenheit wäre mit einer außerhalb gespeicherten Variable möglich. Aber das bringt dir nichts, weil das Select keine zwei Datensätze zurückgeben kann.
Hat jemand eine Idee, wie man dies bewerkstelligen kann, ohne dass man die Liste umfüllen muss?
Es geht, wenn du statt des Select die aus dem Where herauskommende Menge einem foreach übergibst. In dessen Body werden die Datensätze umgeformt und in einer vorher erstellten Liste abgelegt. Dabei kannst du nun auch in die Vergangenheitsvariable schauen (oder alternativ in das letzte Element der Liste) und bei einem Datumswechsel erst der Liste einen null-Datensatz anhängen und dann den richtigen.
*) Warum mixt du denn da die Syntax? Es geht zwar, die LINQ-Schreibweise und den funktionalen Ansatz zu mischen, aber konsistent sieht anders aus.
dedlfix.