C# 项目中每个控件的连接对象、命令等,使得重用极其困难。@user1889231您需要遵循Jon关于查询的建议,以及Parag关于在使用数据表之前先实例化数据表的建议。这应该可以让你的代码“工作”,但这不一定是最好的方式:-)谢谢。我总是想让它对我来说是最简单

C# 项目中每个控件的连接对象、命令等,使得重用极其困难。@user1889231您需要遵循Jon关于查询的建议,以及Parag关于在使用数据表之前先实例化数据表的建议。这应该可以让你的代码“工作”,但这不一定是最好的方式:-)谢谢。我总是想让它对我来说是最简单,c#,sql,visual-studio,C#,Sql,Visual Studio,项目中每个控件的连接对象、命令等,使得重用极其困难。@user1889231您需要遵循Jon关于查询的建议,以及Parag关于在使用数据表之前先实例化数据表的建议。这应该可以让你的代码“工作”,但这不一定是最好的方式:-)谢谢。我总是想让它对我来说是最简单的,而不是最好的,特别是在琐碎的事情上,但谢谢你指出这一点out@dash:Ick,那太可怕了,是的:(@JonSkeet-+1.对SQL语句的观察很好。)我猜原始海报已经将连接和命令类拖放到了表单上。这会导致项目中每个控件的连接对象、命令等的


项目中每个控件的连接对象、命令等,使得重用极其困难。@user1889231您需要遵循Jon关于查询的建议,以及Parag关于在使用数据表之前先实例化数据表的建议。这应该可以让你的代码“工作”,但这不一定是最好的方式:-)谢谢。我总是想让它对我来说是最简单的,而不是最好的,特别是在琐碎的事情上,但谢谢你指出这一点out@dash:Ick,那太可怕了,是的:(@JonSkeet-+1.对SQL语句的观察很好。)我猜原始海报已经将连接和命令类拖放到了表单上。这会导致项目中每个控件的连接对象、命令等的多个实例,这使得重用非常困难。@user1889231您需要遵循Jon关于查询的建议,以及Parag关于在使用数据表之前先实例化数据表的建议。这应该可以让你的代码“工作”,但这不一定是最好的方式:-)谢谢。我总是想让它对我来说是最简单的,而不是最好的,特别是在琐碎的事情上,但谢谢你指出这一点out@dash:啊,那太可怕了,是的:(@JonSkeet-+1.对SQL语句的观察很好。)谢谢你的好话,伙计!谢谢你的好话,伙计!
namespace iss_farmacie_spitali
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            SqlDataReader reader = null;
            DataTable table = null;

            try
            {
                sqlConnection1.Open();
            }

            catch(Exception f)
            {
                Console.WriteLine(e.ToString());
            }
            sqlCommand1.Parameters.AddWithValue("@user",textBox1.Text);
            sqlCommand1.Parameters.AddWithValue("@pass",textBox2.Text);
            sqlCommand1.CommandText = "SELECT id,parola FROM ANGAJAT WHERE id='@user' AND parola='@pass'";

            reader = sqlCommand1.ExecuteReader();
            table.Load(reader);  


            sqlConnection1.Close();
        }


    }
}
using (var connection = new SqlConnection(...))
{
    connection.Open();
    using (var command = new SqlComand(...))
    {
        ...
    }
}
SELECT id,parola FROM ANGAJAT WHERE id='@user' AND parola='@pass'
SELECT id,parola FROM ANGAJAT WHERE id=@user AND parola=@pass
private void button1_Click(object sender, EventArgs e) 
{
    SqlDataReader reader = null;

    //Corrections
    DataTable table = new DataTable(); //#1 : Initialize Table

    using(SqlConnection sqlConnection1 = new SqlConnection()) //#2: Initialize SqlConnection & make use of `using` for object cleanup after use
    using(SqlCommand sqlCommand1 = new SqlCommand()) //#3: Initialize SqlCommand & make use of `using` for object cleanup after use
    {

        sqlConnection1.ConnectionString = "<connection string>"; //#4: Set connection string
        sqlCommand1.Connection = sqlConnection1;

        sqlConnection1.Open();

        sqlCommand1.CommandText = "SELECT id,parola FROM ANGAJAT WHERE id=@user AND parola=@pass";

        sqlCommand1.Parameters.AddWithValue("@user",textBox1.Text);
        sqlCommand1.Parameters.AddWithValue("@pass",textBox2.Text);

        using(SqlReader reader = sqlCommand1.ExecuteReader()) //#4 : Make use of `using` for object cleanup after use
        {
            table.Load(reader);  
        }

        sqlConnection1.Close();
    }
}
reader = sqlCommand1.ExecuteReader();

while (reader.Read()) 
{
   // Do somthing here
}