Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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# C、 MySql Select语句_C#_Mysql_Select - Fatal编程技术网

C# C、 MySql Select语句

C# C、 MySql Select语句,c#,mysql,select,C#,Mysql,Select,我不知道怎么回事,我已经查过其他问题了。 我在文本框中得到以下消息:mysql.data.mysqlclient.mysqlcommand if (Session["Login"] != null) { string email = (string)Session["Login"]; MySqlConnection conn = new MySqlConnection(ConfigurationManager.ConnectionSt

我不知道怎么回事,我已经查过其他问题了。 我在文本框中得到以下消息:mysql.data.mysqlclient.mysqlcommand

if (Session["Login"] != null)
    {           
        string email = (string)Session["Login"];
        MySqlConnection conn = new MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionStringloginDb"].ConnectionString);
        conn.Open();

        MySqlCommand getNome = conn.CreateCommand();
        getNome.CommandType = CommandType.Text;
        getNome.CommandText = "SELECT nome_utente FROM utenti WHERE email = @email";
        getNome.Parameters.AddWithValue("@email", email);
        getNome.ExecuteNonQuery();

        txtNome.Text = getNome.ToString();

        conn.Close();
等等。

getNome是一个MySqlCommand,它不会覆盖ToString。因此,当您调用getNome.ToString时,将获得完整的类型名。你想要这个:

// getNome.ExecuteNonQuery();                    <--- not this
txtNome.Text = (String)getNome.ExecuteScalar();  <--- but this
假定电子邮件是唯一的,getNome是一个MySqlCommand,它不会覆盖ToString。因此,当您调用getNome.ToString时,将获得完整的类型名。你想要这个:

// getNome.ExecuteNonQuery();                    <--- not this
txtNome.Text = (String)getNome.ExecuteScalar();  <--- but this
假设电子邮件是唯一的

试试看

 txtNome.Text = (string)getNome.ExecuteScalar();
试一试


因为您使用的是MySqlCommand类型的.ToString方法,在本例中,该方法返回从objet类型继承的类本身的名称


我建议改用ExecuteScalar方法。

因为您使用的是MySqlCommand类型的.ToString方法,在本例中,该方法返回从objet类型继承的类本身的名称


我建议改为使用ExecuteScalar方法。

您需要将.SingleOrDefault添加到getNome.SingleOrDefault.ToString或甚至ExecuteScalar的末尾,具体取决于您需要添加的内容。您需要将.SingleOrDefault添加到getNome.SingleOrDefault.ToString的末尾,甚至是ExecuteScalar,具体取决于您需要添加的内容,显然,你不能用同一封电子邮件多次在网站上注册是的,显然你不能用同一封电子邮件多次在网站上注册