Quantcast
Channel: patterns & practices: Project Silk
Viewing all articles
Browse latest Browse all 93

New Post: Performance issue

$
0
0
Hi,

Thanks for your prompt reply.

For functions in data layer, the function ToList() is called before return. For example,
public IEnumerable<Reminder> GetOverdueReminders(int vehicleId, DateTime forDate, int odometer)
        {
            return this.GetDbSet<Reminder>()
                    .Where( r => (r.VehicleId == vehicleId) && (r.DueDate < forDate || r.DueDistance < odometer) && !r.IsFulfilled)
                    .ToList();
        }
Executing ToList() would cause the query to execute immediately.

In VehicleController.JsonDetails, Take(3) would be carried out against the data in memory. i.e. more than enough data would be retrieved from DB
            var overdue = Using<GetOverdueRemindersForVehicle>()
                .Execute(id, DateTime.UtcNow, vehicle.Odometer ?? 0)
                .Take(3);
Thanks!

Viewing all articles
Browse latest Browse all 93

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>