отображение данных MySQL в списке и быстрая сортировка - PullRequest
0 голосов
/ 08 мая 2019

Я загружаю данные из базы данных MySQL, я успешно подключился к базе данных, однако мне нужна помощь для отображения данных в списке из списка массивов записей данных в базе данных

///// Клиентский метод

using dataTier;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;

namespace businessTier
{
    public class clientDB
    {
        public List<ProjectEntries> ProjectEntries = new List<ProjectEntries>();

        public void clientInfo()
        {
            string tableName = "clients_info";

            DataConnection dc = new DataConnection();
            DataSet client = dc.selectData(tableName);

            foreach (DataRow customer_row in client.Tables[0].Rows)
            {
                string surname, name, email,project,company,capital;

                surname = name = email = project = company = capital = "";

                for (int i = 0; i < client.Tables[0].Columns.Count; i++)
                {
                    if (client.Tables[0].Columns[i].ColumnName.StartsWith("client_name"))
                    {
                        name = customer_row.ItemArray[i].ToString();
                    }
                    else if (client.Tables[0].Columns[i].ColumnName.StartsWith("client_surname"))
                    {
                        surname = customer_row.ItemArray[i].ToString();
                    }
                    else if (client.Tables[0].Columns[i].ColumnName.StartsWith("client_email"))
                    {
                        email = customer_row.ItemArray[i].ToString();
                    }
                    else if (client.Tables[0].Columns[i].ColumnName.StartsWith("client_company"))
                    {
                        company = customer_row.ItemArray[i].ToString();
                    }
                    else if (client.Tables[0].Columns[i].ColumnName.StartsWith("client_project"))
                    {
                        project = customer_row.ItemArray[i].ToString();
                    }
                    else if (client.Tables[0].Columns[i].ColumnName.StartsWith("client_capital"))
                    {
                        capital = customer_row.ItemArray[i].ToString();
                    }
                }

                // Add the information to the db

                clientData temp_entry = new clientData() { name = name, surname = surname, email = email, company = company, project = project, capital = capital };

                for (int i = 0; i < ProjectEntries.Count; i++)
                {
                    ProjectEntries temp_index = new ProjectEntries() { entries = new List<clientData>() { temp_entry } };
                    ProjectEntries.Add(temp_index);

                }

            }
        } // End of method 




        public void sortProjectName()
        {
            SortProjectName sortProject = new SortProjectName();
          //  ClientData.Sort(sortProject);
        }


        public class SortProjectName : IComparer<clientData>
        {


            //sorting letter of index
            List<clientData> project = new List<clientData>();
            public int Compare(clientData i, clientData j)
            {
                return i.project.CompareTo(j.project);
            }
         }



    } // End of method sortPhoneIndex()




    public class ProjectEntries
    {
        public List<clientData> entries { get; set; }

        //sorting fields with same names



    } // End of Class PhoneIndex

    public class clientData
    {
        public string name { get; set; }
        public string surname { get; set; }
        public string email { get; set; }
        public string project { get; set; }
        public string company { get; set; }
        public string capital { get; set; }


    }
}
//End of Class 

// Конец пространства имен Business_Logic_Layer

// вызывает значения из clientMethod для передачи возвращаемых значений на уровень представления при загрузке формы

    clientDB clientData = new clientDB();
    clientData.clientInfo();
    List<ProjectEntries> ProjectEntries = new List<ProjectEntries>();
    listBox1.Items.Add("Name    Surname     Email       Company     Project     Capital Resource");
    foreach (ProjectEntries ed in clientData.ProjectEntries)
    {
    // Console.WriteLine("{0} \n=", entry.entries);
    listBox1.Items.Add(ed.ToString());

    foreach (clientData cd in ed.entries)
    {
        listBox1.Items.Add(cd.ToString() );
    }
}

// уровень представления в окнахформа, где я отображаю данные

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...