C# C通过用户控件连接到mysql

C# C通过用户控件连接到mysql,c#,mysql,C#,Mysql,嘿,伙计,我是C的新手 我的问题是,是否可以通过webusercontrol连接到数据库 我试图列出值从何处来 像 最好的方法是什么 用户控制?还是另一种方式?看看这个: HTML: 因此,基本上,如果数据库处于活动状态,您应该首先从中获取数据 private static string connString = "server=127.0.0.1; userid=yourUserHere; password=youPasswordHere; database=yourDatabaseNameH

嘿,伙计,我是C的新手

我的问题是,是否可以通过webusercontrol连接到数据库

我试图列出值从何处来

最好的方法是什么


用户控制?还是另一种方式?

看看这个:

HTML:


因此,基本上,如果数据库处于活动状态,您应该首先从中获取数据

private static string connString = "server=127.0.0.1; userid=yourUserHere; password=youPasswordHere; database=yourDatabaseNameHere";
public static DataTable SelectData(MySqlCommand command)
        {
            try
            {
                DataTable dataTable = new DataTable();

                using (MySqlConnection connection = new MySqlConnection())
                {
                    connection.ConnectionString = connString;
                    connection.Open();

                    command.Connection = connection;
                    MySqlDataReader reader = command.ExecuteReader();
                    dataTable.Load(reader);

                    return dataTable;
                }
            }
            catch (MySqlException e)
            {
                Console.Write(e.Message);
                return null;
            }
        }
然后在上下文中,需要使用SQL行调用此方法。您应该始终使用参数化查询来最小化SQL注入之类的风险。此外,如果需要,还需要将数据表中的信息转换为列表。像这样:

public List<string> dataTableToString(DataTable table)
        {
            List<string> Labels = new List<string>();
            foreach (DataRow row in table.Rows)
            {
                //index of row you want returned in the list
                Labels.Add(row[2].tostring())
            }
         return labels
         }
public List<string> whateverInformationYouWantHere(string labelID,)
        {
            MySqlCommand command = new MySqlCommand();
            command.CommandText = "SELECT * FROM LABELS WHERE LabelID = @labelID";
            command.Parameters.AddWithValue("labelID", labelID);
            return dataTableToString(Databasehandler.SelectData(command));
        }

然后你所要做的就是做一个foreach循环,并在你的UL中插入所有标签项。如果您有问题,请随时提问。

您让自己变得更复杂了。。让您自己进一步探索如何使用C连接DB。查看load事件,然后将数据库调用放在其中。你正在尝试做一些不需要的事情,这是我们作为一个团队必须做的事情,结果是:我同意我必须做更多的工作。我可以给你一个示例想法,等着做,然后试着运行你的项目。嗯,对于这个想法,我将尝试:
protected void Page_Load(object sender, EventArgs e)
{
   sample1.InnerText = "just imagine that this text is came from the first column from your DB";
}
private static string connString = "server=127.0.0.1; userid=yourUserHere; password=youPasswordHere; database=yourDatabaseNameHere";
public static DataTable SelectData(MySqlCommand command)
        {
            try
            {
                DataTable dataTable = new DataTable();

                using (MySqlConnection connection = new MySqlConnection())
                {
                    connection.ConnectionString = connString;
                    connection.Open();

                    command.Connection = connection;
                    MySqlDataReader reader = command.ExecuteReader();
                    dataTable.Load(reader);

                    return dataTable;
                }
            }
            catch (MySqlException e)
            {
                Console.Write(e.Message);
                return null;
            }
        }
public List<string> dataTableToString(DataTable table)
        {
            List<string> Labels = new List<string>();
            foreach (DataRow row in table.Rows)
            {
                //index of row you want returned in the list
                Labels.Add(row[2].tostring())
            }
         return labels
         }
public List<string> whateverInformationYouWantHere(string labelID,)
        {
            MySqlCommand command = new MySqlCommand();
            command.CommandText = "SELECT * FROM LABELS WHERE LabelID = @labelID";
            command.Parameters.AddWithValue("labelID", labelID);
            return dataTableToString(Databasehandler.SelectData(command));
        }