Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将sql查询结果传递给变量_C# - Fatal编程技术网

C# 将sql查询结果传递给变量

C# 将sql查询结果传递给变量,c#,C#,我刚刚开始学习C#,这是我第一次请求帮助 我已经写了一个登录脚本,它有通常的“用户名”和“密码”字段以及提交按钮 脚本查询MySQL数据表,如果用户名和密码匹配,则关闭登录窗口并打开详细信息窗口 我试图做的是使用查询中的两个字段,并将内容传递到detail窗口进行显示。这是迄今为止的代码: MySqlCommand SelectCommand = new MySqlCommand( "SELECT clientID, login, pass, name_f, name_l FROM FIDS_

我刚刚开始学习C#,这是我第一次请求帮助

我已经写了一个登录脚本,它有通常的“用户名”和“密码”字段以及提交按钮

脚本查询MySQL数据表,如果用户名和密码匹配,则关闭登录窗口并打开详细信息窗口

我试图做的是使用查询中的两个字段,并将内容传递到detail窗口进行显示。这是迄今为止的代码:

MySqlCommand SelectCommand = new MySqlCommand(
"SELECT clientID, login, pass, name_f, 
name_l FROM FIDS_members WHERE login = '" + 
this.username_txt.Text + "' AND pass = '" + 
this.pass_txt.Text + "';", myConn);

            MySqlDataReader myReader;
            myConn.Open();

            myReader = SelectCommand.ExecuteReader();

            int count = 0;


            while (myReader.Read())
            {

                count = count + 1;
            }

            if (count == 1)
            {

                string name_f = myReader.GetString("name_f").ToString();
                name_f_txt = name_f;

                this.Hide();
                Welcome f2 = new Welcome(name_f.Text);
                f2.ShowDialog();
            }
            else

                MessageBox.Show("The username or password are incorrect, please try again...");


           // Clear login feilds
            username_txt.Text = String.Empty;
            pass_txt.Text = String.Empty;
我得到的错误是:

字符串不包含“文本”的定义


我知道我可能没有正确地执行此操作,但如果有人能提供一些指针,这将非常有帮助。

错误可能是因为这一行

Welcome f2 = new Welcome(name_f.Text);
换成

Welcome f2 = new Welcome(name_f);

name\u f
是一个符合您的代码的字符串,似乎您正在将其用作文本框

您应该适当地使用
new Welcome(name\u f)
而不是name\u f.Text,因为name\u f是一个字符串而不是一个文本框。如果这没有帮助,请同时提供发生错误的行号。同时开始查找
MySqlParameter
您可能还想重新了解命名约定。name\f vs name\u f\u txt vs pass\u txt等。您好,“name\u f”“没有设置为文本框,我只是想让它保存查询字段的结果。如果我进行更改并删除“.Text”,则会出现以下错误:“name\u f\u txt”名称在当前文件中不存在context@DCJones:这意味着未定义
name\u f\u txt
,您确定这是名称吗?如果
name\u f\u txt
是一个文本框,则需要执行
name\u f\u txt.Text=name\u f但首先您需要解决“未定义”问题。我已解决错误消息,但当第二个窗口打开我用于显示“name-f”var show“System”内容的标签时。在第二个窗口中,我使用以下内容显示var“name_f”内容:public Welcome(字符串name_f_txt){InitializeComponent();label5.Text=name_f_txt;