Ich bin neu in LINQ und ich bin ein bisschen verwirrt, wie IF ELSE in LINQ schreiben.Wie schreibe ich LINQ mit mehreren Bedingung
Die aktuelle LINQ, die ich geschaffen habe, ist:
lstRecord = (from a in lstPerson
select new GeneralCommonFunctions.MemberDetailSumary
{
AgeGroupId = a.AgeGroup_id!=null? a.AgeGroup_id.Value: 0,
AgeGroupText = a.Agegroup!=null?a.Agegroup.Description: "",
}).ToList();
Nun möchte Ich mag die DOB aus der Liste erhalten und das aktuelle Alter der Zeitpunkt, basierend auf heute berechnen, dann ist es in der Altersgruppe kategorisieren (die aktuelle Version wird direkt die Altersgruppe aus der Datenbank bekommen).
Die verfügbare Altersgruppe ist:
unter 25 (ID ist 1)
26-35 (ID 2)
36-45 (ID 3)
46-55 (ID ist 4)
5 5 und höher (ID 5)
Wenn zum Beispiel Mitglied DOB 1990.01.15 ist, wird er gehört 2. zu Altersklasse, wenn Mitglied DOB 1970.12.20 ist, er gehört zu 4. Altersklasse
I stucked bin in dieser Codierung:
lstRecord = (from a in lstPerson
select new GeneralCommonFunctions.MemberDetailSumary
{
Age = DateTimeUtility.GetCurrentAge(a.Dob),
//I dont know how to continue in this part, my idea is if the age is 0-25, the agegroup_id is 1, if the age is 30, the agegroup_id is 2.
}).ToList();
ist jemand von euch mir dabei helfen? Vielen Dank !
UPDATE:
Ich habe eine Idee von Update alle Zeilen mit LINQ, wenn die Schaltfläche geklickt. Wenn der Benutzer beispielsweise auf eine Schaltfläche klickt, wird das System jede Person DOB überprüfen und dann ihre Altersgruppe in der Datenbank aktualisieren.
Zum Beispiel, wenn Person A DOB 1990-01-01 ist, seine/ihre Altersklasse automatisch auf 2 aktualisiert wird, wenn Person B DOB 1970.05.15 ist, seine/ihre Altersklasse wird bis 4. aktualisiert
Wie schreibe ich eine Linq, um alle Zeilen in der Datenbank zu aktualisieren? Vielen Dank für Ihre Hilfe!
Nun würde ich nicht versuchen, die Logik alle mit verschachtelten bedingten Operatoren zu schreiben. Schreiben Sie einfach eine Methode, die berechnet, dass das Alter das Band, in dem es sich befindet, überprüft und die entsprechende ID zurückgibt. – juharr
Sie wäre besser, nur berechnete Spalte in Ihrer Datenbank hinzufügen: https://technet.microsoft.com/en-us/library/ms191250(v=sql.105).aspx – MarcinJuraszek