/// <summary> /// Actual executable method of database query which returns data from database. /// </summary> /// <param name="session">The database connection session.</param> /// <param name="cancellationToken">Operation cancellation token.</param> public virtual async Task <T> ExecuteAsync(IDatabaseSession session, CancellationToken cancellationToken) => await session.QueryFirstOrDefaultAsync <T>(this.SqlStatement, this.Parameters, cancellationToken);