Заполнение меток ряда строк Basi c месяцами из базы данных - PullRequest
0 голосов
/ 22 апреля 2020

У меня есть Basic Row Live Chart, и я подключил его к базе данных SQL Server. Мне удалось заставить столбцы заполняться, но я не могу заставить Labels заполнить его соответствующими точками данных.

Когда мой запрос выполняется в SQL, он показывает:

enter image description here

Вот мой код для Basic Row диаграммы

    private void ChartValues()
    {
        // Defines the variable for differnt lines.
        List<double> allValues = new List<double>();
        List<double> someValues = new List<double>();

        try
        {
            SqlConnection connection = new SqlConnection("Data Source=WINDOWS-B1AT5HC\\SQLEXPRESS;Initial Catalog=CustomerRelations;Integrated Security=True;");

            string selectQuery = ("SELECT DATENAME(MONTH, OPENED) as MonthName, COUNT(CASE WHEN REV_CLS = 2 THEN 1 END) AS Commercial, COUNT(CASE WHEN REV_CLS <> 2 THEN 1 END) AS Residential FROM hb_Disputes CROSS JOIN Users WHERE(Users.TX_EMPLOYEE = 'Ian Mark') AND(YEAR(hb_Disputes.OPENED) = YEAR(GETDATE())) GROUP BY DATENAME(MONTH, OPENED)");
            connection.Open();
            SqlCommand command = new SqlCommand(selectQuery, connection);

            SqlDataReader sqlReader = command.ExecuteReader();

            while (sqlReader.Read())
            {
                // Select the values from the columns selected 
                allValues.Add(Convert.ToDouble(sqlReader["Residential"]));
                someValues.Add(Convert.ToDouble(sqlReader["Commercial"]));

            }
            // Starts new line series.
            SeriesCollection = new SeriesCollection
            {
                new RowSeries
                {
                    Title = "Residential",
                    Values = new ChartValues<double>(allValues),

                },
                new RowSeries
                {
                    Title = "Commercial",
                    Values = new ChartValues<double>(someValues),

                }
            };

            Labels = new[]
            {
                //I'm not sure what code needs to go here
            };
            Formatter = value => value.ToString("N");

            // Sets the graph X Value.
            SeriesCollection[1].Values.Add(5d);


            DataContext = this;

            connection.Close();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...