Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.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# 与windows登录窗体的SQL连接_C#_Sql - Fatal编程技术网

C# 与windows登录窗体的SQL连接

C# 与windows登录窗体的SQL连接,c#,sql,C#,Sql,我真的很想在这段代码上得到帮助,尝试将SQL和C连接起来,生成一个windows窗体来填写密码和用户名,I dt.fill;提供了一个错误,非innovocable成员。。。我想知道我应该如何处理代码 namespace Homeworkc { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private v

我真的很想在这段代码上得到帮助,尝试将SQL和C连接起来,生成一个windows窗体来填写密码和用户名,I dt.fill;提供了一个错误,非innovocable成员。。。我想知道我应该如何处理代码

namespace Homeworkc
{
   public partial class Form1 : Form
   {
      public Form1()
      {
         InitializeComponent();
      }

      private void button3_Click(object sender, EventArgs e)
      {
         this.Close();
         Application.Exit();
      }

      private void button1_Click(object sender, EventArgs e)
      {
         SqlConnection con = new SqlConnection(@"Data Source=C:\Users\courageboy\AppData\Local\Temporary Projects\Homeworkc\Data.sdf");
         SqlDataAdapter sda = new SqlDataAdapter("Select Count(*)From Login where username='" + textBox1.Text + "'and password='" + textBox2.Text + "'", con);
         DataTable dt = new DataTable();
         dt.Fill();

         if (dt.Rows[0][0].ToString() == "1")
         {
            this.Hide();
            Displayform df = new Displayform();
            df.Show();
         }

         else 
         {
            MessageBox.Show("please you have enter a wrong Username or Password");
         }
      }
   }
}
使用SqlDataAdapter,您需要填充数据表,如下所示:

这使用了一种方法

在你的发言中:

DataTable dt = new DataTable();
dt.Fill(); //this one
此DataTable独立于SqlDataAdapter,您需要调用SqlDataAdapter.Fill方法来填充DataTable


由于在代码中不考虑使用,您当前的代码对

注释是开放的:您应该只存储散列密码,因此您的密码栏应该只包含杂文。如果没有,你就有问题了。这段代码也是一个巨大的SQL注入漏洞。@Habib,非常感谢,其他人都是你的灵感来源
DataTable dt = new DataTable();
dt.Fill(); //this one