J'essaie de créer un attribut "Level" qui sera mis à 0 si les enregistrements CompletedDate est le plus grand/max dans l'ensemble des résultats, sinon placez-le à 1. J'ai besoin de savoir quel "niveau" il est à des fins de production afin que je puisse correctement rendre les divs imbriqués. Toutes les idées seraient très appréciées.Linq Sélectionner une nouvelle propriété SI La date est Max()
From g In pciData.AsEnumerable() _
Order By (g.SmartForm.CompletedDate) Descending _
Select _
Name = IIf(g.SmartForm.FormName Is Nothing, "", g.SmartForm.FormName.ToString()), _
Level = IIf(_
iif(Date.Parse(g.SmartForm.CompletedDate) = "GET MAX DATE OF RESULT SET HERE", 0, 1)
RÉPONSE
Level = IIf(Date.Parse(g.SmartForm.CompletedDate) = _
Date.Parse(pciData.Max(Function(m) m.SmartForm.CompletedDate)), 0, 1)
Je calcule cette date avant ces appels et l'utilisent dans le IIf. Quelque chose comme ceci 'Dim maxDate As DateTime = pciData.AsEnumerable(). Max (Fonction (s) à.CompletedDate)' – Saragis
Merci @Saragis Je vais essayer que si tout le reste échoue, mais je veux vraiment l'avoir dans la même requête . Même si ce n'est pas dans la clause select. J'ai mis à jour ma question. – Eric
Eh bien, il est certainement également possible d'utiliser 'pciData.AsEnumerable(). Max (Fonction (s) s.CompletedDate)' à l'intérieur de votre IIf. Je ne sais pas comment cela va affecter les performances par rapport à ce que j'ai suggéré (pourrait avoir un effet). – Saragis