public virtual T GetById(TKey Id, Guid userId) { var eventIds = this.GetUserEventIds(userId); T result; using (var uow = _db.GetTransaction()) { result = _db.SingleOrDefault <T>("WHERE Id = @0 AND EventId IN (@1)", Id, eventIds); uow.Complete(); } return(result); }