/// <summary>
        /// When overridden in a provider, it discovers the date metrics stored in the users data area.
        /// </summary>
        /// <param name="question">The question.</param>
        /// <returns></returns>
        protected override Collection <System.DateTime> ProviderDiscoverDateMetrics(TaskActivitiesProvider.MetricQuestion question)
        {
            Collection <System.DateTime> dates = new Collection <System.DateTime>();

            using (SqlConnection connection = new SqlConnection(_connectionString))
            {
                connection.Open();
                using (SqlCommand command = new SqlCommand(discoverDateMetricsStatement, connection)
                {
                    CommandType = System.Data.CommandType.StoredProcedure
                })
                {
                    command.Parameters.AddWithValue("@UserId", Engine.IdentityProvider.Principal.Identity.Name);
                    command.Parameters.AddWithValue("@Question", question.ToString());
                    SqlDataReader reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        DateTime date = reader.GetDateTime(0);
                        dates.Add(date);
                    }
                }
            }
            return(dates);
        }