public Nullable<DateTime> GetDateOfDeviceLastVisit(Guid deviceId, Guid applicationId)
{
try
{
IMongoQuery queryBase = Query.And
(
Query<AppUsageSummary>.EQ<Guid>(mem => mem.ApplicationId, applicationId),
Query.EQ("DevicesVisits.DeviceId", BsonValue.Create(deviceId))
);
MongoCursor<AppUsageSummary> appUsageSummaries =
this.GetCollection<AppUsageSummary>().Find(queryBase);
appUsageSummaries.SetSortOrder(SortBy<AppUsageSummary>.Descending(x => x.Date));
AppUsageSummary appUsageSummary = appUsageSummaries.FirstOrDefault();
if (appUsageSummary != null)
{
return appUsageSummary.Date;
}
return null;
}
catch (Exception ex)
{
throw new DataAccessLayerException(ex);
}
}