Ich habe eine Abfrage, die einen Wert auswählen. Der Code ist:Hinzufügen bedingten Wert in Linq von Switch-Fall
var query = from c in snd.external_invoices.OrderByDescending(x => x.date)
join o in snd.invoices on c.idexternal_invoices equals o.id_external_invoice
select new
{
c.idexternal_invoices,
c.businessname,
o.number,
c.message,
c.price,
c.date,
c.tipologiaPagamento,
c.esitoPagamento,
c.iduser
};
Jetzt muss ich einen Wert in dieser Abfrage wählen basierend auf dem Wert im Bereich c.tipologiaPagamento. Insbesondere muß ich alle um den Wert auszuwählen, wo c.date es zu diesem Schalter Ergebnis gleich ist:
switch (c.tipologiaPagamento)
{
case "1":
c.date.AddDays(10);
break;
case "2":
c.date.AddDays(10);
break;
case "3":
DateTime endOfMonth = new DateTime(c.date.Year,
c.date.Month,
DateTime.DaysInMonth(c.date.Year,
c.date.Month));
c.date = endOfMonth;
break;
case "4":
DateTime nextMonth = c.date.AddMonths(1);
DateTime endOfNextMonth = new DateTime(c.date.Year,
c.date.Month,
DateTime.DaysInMonth(c.date.Year,
c.date.Month));
c.date = endOfNextMonth;
break;
default:
break;
}
ich brauche die Werte in der Abfrage auszuwählen Also, wo c.date das Ergebnis dieses Schalters gleich .
Wie kann ich das tun?
Vielen Dank an alle
Das einzige Problem mit diesem ist, dass die anonymen Typen unveränderlich sind, daher kann nicht post aktualisiert werden. –
Ja, das ist richtig, Sie müssen einen Typ für die Daten erstellen, um dies zu tun. Danke @IvanStoev –