Je suis assez nouveau à C#, donc je pourrais faire quelque chose de stupide, mais j'ai passé du temps à le regarder et je ne vois toujours pas quel est le problème.La dernière méthode() ne fonctionne pas sur l'objet IQueryable
Voici quelques extraits de code:
double work = 0;
ProjectRepository pr = new ProjectRepository();
IQueryable<CalendarDetail> cds;
// Find matching day of week
// Then for that day, cycle through all working times
// Return list of working times in day
cds = pr.GetCalDetails(calendarID, startTime.DayOfWeek.GetHashCode());
foreach (CalendarDetail cd in cds)
{
DateTime wts = startTime.Date + cd.WorkingTimeStart.Value.TimeOfDay;
DateTime wtf = startTime.Date + cd.WorkingTimeFinish.Value.TimeOfDay;
//more code here....
if ((cds.Last().CalendarDetailID == cd.CalendarDetailID) && (finishTime > wtf))
work += Work(startTime.Date.AddDays(1), finishTime, calendarID);
}
L'erreur est en cours d'exécution en temps jeté en raison de mon utilisation de l'appel de méthode cds.Last(). Cependant, cds a été déclaré et est utilisé comme un objet IQueryable, alors quel est le problème?
Texte d'erreur: L'opérateur de requête 'Last' n'est pas pris en charge. À défaut d'une solution, je suis sûr que je peux «logique» ma façon de contourner le problème, mais cela semblait élégant.
Merci,
Jonathan
pouvez-vous publier votre exception? –
Quelle erreur est générée? –
Heh, je viens de réaliser que vous avez utilisé [wtf] (http: // thedailywtf.com /) en tant que nom de variable réel. –