C# 如何改变结果

C# 如何改变结果,c#,C#,我尝试为我的公司创建Messenger,我们有DNS(每台电脑都有静态ip和电脑名称)。所有作品都是通过插入、选择(mysql)完成的。我想在选择PC名称和IP地址的位置发送组消息 这是计算机信息的代码 { IPHostEntry he; string myip = ""; he = Dns.GetHostEntry(Dns.GetHostName()); foreach (IPAddress ip in he.AddressLi

我尝试为我的公司创建Messenger,我们有DNS(每台电脑都有静态ip和电脑名称)。所有作品都是通过插入、选择(mysql)完成的。我想在选择PC名称和IP地址的位置发送组消息

这是计算机信息的代码

 {
        IPHostEntry he;
        string myip = "";
        he = Dns.GetHostEntry(Dns.GetHostName());
        foreach (IPAddress ip in he.AddressList)
        {
            if (ip.AddressFamily == AddressFamily.InterNetwork)
            {
                myip = ip.ToString();
            }


        }
        label1.Text = myip;
    }

    string pc = System.Environment.MachineName;
在这里,我想选择计算机组(skupina)并插入到消息(nrp)


你知道吗?

这是功能代码

using (MySqlConnection cnn = new MySqlConnection("Server=;Database=OitDB;Uid=martin;Pwd=;"))
    {
        MySqlDataAdapter da = new MySqlDataAdapter("SELECT namepc FROM skupina where nazovskup= 'mojask' ", cnn);
        DataSet ds = new DataSet();
        da.Fill(ds, "skupina");

        List<string> skName = new List<string>();
        foreach (DataRow row in ds.Tables["skupina"].Rows)
        {

            skName.Add(row["namepc"].ToString());
            string constring = "Server=;Database=OitDB;Uid=martin;Pwd=;";
            var Query = "INSERT INTO OitDB.nrp(id,pc,ip,komu,datum,predmet,sprava,skupina)VALUES(@id,@pc,@ip,@komu,@cas,@predmet,@sprava,@name)";
            MySqlConnection conDatabase = new MySqlConnection(constring);
            MySqlCommand cmdDatabase = new MySqlCommand(Query, conDatabase);

            cmdDatabase.Parameters.AddWithValue("@id", idtxt.Text);
            cmdDatabase.Parameters.AddWithValue("@pc", pc);
            cmdDatabase.Parameters.AddWithValue("@ip", label1.Text);
            cmdDatabase.Parameters.AddWithValue("@komu", comboBox1.Text);
            cmdDatabase.Parameters.AddWithValue("@cas", cas);
            cmdDatabase.Parameters.AddWithValue("@predmet", textBox1.Text);
            cmdDatabase.Parameters.AddWithValue("@sprava", pisat.Text);
            cmdDatabase.Parameters.Add("@name", MySqlDbType.VarChar).Value = row["namepc"];
            MySqlDataReader myReader;


            try
            {
                conDatabase.Open();
                myReader = cmdDatabase.ExecuteReader();
                MessageBox.Show("Správa odoslaná!");
                while (myReader.Read())
                {

                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);

            }
        }
使用(MySqlConnection cnn=newmysqlconnection(“服务器=;数据库=OitDB;Uid=martin;Pwd=;”)
{
MySqlDataAdapter da=新的MySqlDataAdapter(“从skupina中选择namepc,其中nazovskup=‘mojask’”,cnn);
数据集ds=新数据集();
da.填充(ds,“skupina”);
List skName=新列表();
foreach(ds.Tables[“skupina”].Rows中的数据行)
{
添加(行[“namepc”].ToString());
string constring=“Server=;Database=OitDB;Uid=martin;Pwd=;”;
var Query=“插入OitDB.nrp(id、pc、ip、komu、datum、predmet、sprava、skupina)值(@id、@pc、@ip、@komu、@cas、@predmet、@sprava、@name)”;
MySqlConnection conDatabase=新的MySqlConnection(constring);
MySqlCommand cmdDatabase=新的MySqlCommand(查询、条件数据库);
cmdDatabase.Parameters.AddWithValue(“@id”,idtxt.Text);
cmdDatabase.Parameters.AddWithValue(“@pc”,pc);
cmdDatabase.Parameters.AddWithValue(“@ip”,label1.Text);
cmdDatabase.Parameters.AddWithValue(“@komu”,comboBox1.Text);
cmdDatabase.Parameters.AddWithValue(“@cas”,cas);
cmdDatabase.Parameters.AddWithValue(“@predmet”,textBox1.Text);
cmdDatabase.Parameters.AddWithValue(“@sprava”,pisat.Text);
cmdDatabase.Parameters.Add(“@name”,MySqlDbType.VarChar).Value=row[“namepc”];
MySqlDataReader;
尝试
{
conDatabase.Open();
myReader=cmdDatabase.ExecuteReader();
MessageBox.Show(“Správa odoslaná!”);
while(myReader.Read())
{
}
}
捕获(例外情况除外)
{
MessageBox.Show(例如Message);
}
}

目前,您的
选择
没有排序…您介意哪一行以哪个
行x=…
部分结尾吗?您只是想将一个列表{x”,“y”,“z}转换为一个列表{row1=x”,“row2=y”,“row3=z}?因为如果是这样,MySQL部分是非常不相关的……是的,我只想将列表转换为
{“row1=x”、“row2=y”、“row3=z”}
如何删除MySQL部分?通过给出一个简短而完整的示例,该示例仅从一个
列表开始
。您可以在不访问任何数据库的情况下填充该部分…能够将问题缩小到与之相关的部分非常重要。编辑问题。如何从第一个表到列表,然后再到第二个表,给出3行?I“我不知道你说的“给出3行”是什么意思,但你似乎已经删除了mysql标记,但没有做任何其他事情。你应该把一个与mysql无关的代码放在一起。这就是问题中的代码,不是吗?如果不是,区别是什么?
row1-message1-pc1 
row2-message1-pc1,pc2 
row3-message1-pc1,pc2,pc3

and I want to:

row1-message1-pc1
row2-message1-pc2
row3-message1-pc3
using (MySqlConnection cnn = new MySqlConnection("Server=;Database=OitDB;Uid=martin;Pwd=;"))
    {
        MySqlDataAdapter da = new MySqlDataAdapter("SELECT namepc FROM skupina where nazovskup= 'mojask' ", cnn);
        DataSet ds = new DataSet();
        da.Fill(ds, "skupina");

        List<string> skName = new List<string>();
        foreach (DataRow row in ds.Tables["skupina"].Rows)
        {

            skName.Add(row["namepc"].ToString());
            string constring = "Server=;Database=OitDB;Uid=martin;Pwd=;";
            var Query = "INSERT INTO OitDB.nrp(id,pc,ip,komu,datum,predmet,sprava,skupina)VALUES(@id,@pc,@ip,@komu,@cas,@predmet,@sprava,@name)";
            MySqlConnection conDatabase = new MySqlConnection(constring);
            MySqlCommand cmdDatabase = new MySqlCommand(Query, conDatabase);

            cmdDatabase.Parameters.AddWithValue("@id", idtxt.Text);
            cmdDatabase.Parameters.AddWithValue("@pc", pc);
            cmdDatabase.Parameters.AddWithValue("@ip", label1.Text);
            cmdDatabase.Parameters.AddWithValue("@komu", comboBox1.Text);
            cmdDatabase.Parameters.AddWithValue("@cas", cas);
            cmdDatabase.Parameters.AddWithValue("@predmet", textBox1.Text);
            cmdDatabase.Parameters.AddWithValue("@sprava", pisat.Text);
            cmdDatabase.Parameters.Add("@name", MySqlDbType.VarChar).Value = row["namepc"];
            MySqlDataReader myReader;


            try
            {
                conDatabase.Open();
                myReader = cmdDatabase.ExecuteReader();
                MessageBox.Show("Správa odoslaná!");
                while (myReader.Read())
                {

                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);

            }
        }