Excepción de linq: esta función solo puede invocarse desde LINQ a entidades

Estoy tratando de obtener datos que se guardan en caché. Pero lanza una excepción en la línea "seleccionar nuevo FilterSsrsLog". Excepción: esta función solo puede invocarse desde LINQ a entidades

List<ExecutionLog3> reportServerDB = UpdateCache();
        var reportLog = (from r in reportServerDB
                         orderby r.TimeStart descending
                         where ((model.reportName == null ? true : r.ItemPath.Contains(model.reportName)) &&
                          (model.reportFolder == null ? true : r.ItemPath.Contains(model.reportFolder)) &&
                          (r.TimeStart >= startDateTime) &&
                          (r.TimeStart <= endDateTime)
                         )
                   select new FilterSsrsLog
                   {
                       UserName = r.UserName,
                       ReportName = r.ItemPath,
                       ReportFolder = r.ItemPath,
                       Format = r.Format,
                       Parameters = r.Parameters,
                       TimeStart = r.TimeStart,
                       TimeEnd = r.TimeEnd,
                       TotalTime = EntityFunctions.DiffMilliseconds(r.TimeStart, r.TimeEnd)
                   });

Si elimino el bloque de código "seleccionar nuevo FilterSsrsLog" y escribo "seleccionar r", funciona. Pero solo necesito esas columnas, ¿qué puedo hacer para resolver este problema?

Respuestas a la pregunta(1)

Su respuesta a la pregunta