请大家看看我的代码,看我错在哪里?老是提示sqlconnection没有初始化
代码:
请大家看看我的代码,错误在哪里?
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Data.SqlClient;namespace WindowsApplication1
{
/// <summary>
/// Form1 的摘要说明。
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.TextBox textBox2;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.Button button2;
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.Container components = null; public Form1()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent(); //
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
} /// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null) 
{
components.Dispose();
}
}
base.Dispose( disposing );
} #region Windows 窗体设计器生成的代码
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.textBox1 = new System.Windows.Forms.TextBox();
this.textBox2 = new System.Windows.Forms.TextBox();
this.button1 = new System.Windows.Forms.Button();
this.button2 = new System.Windows.Forms.Button();
this.SuspendLayout();
// 
// label1
// 
this.label1.Location = new System.Drawing.Point(24, 56);
this.label1.Name = "label1";
this.label1.TabIndex = 0;
this.label1.Text = "用户名:";
// 
// label2
// 
this.label2.Location = new System.Drawing.Point(24, 88);
this.label2.Name = "label2";
this.label2.TabIndex = 1;
this.label2.Text = "密码:";
// 
// textBox1
// 
this.textBox1.Location = new System.Drawing.Point(136, 56);
this.textBox1.Name = "textBox1";
this.textBox1.TabIndex = 2;
this.textBox1.Text = "";
// 
// textBox2
// 
this.textBox2.Location = new System.Drawing.Point(136, 88);
this.textBox2.Name = "textBox2";
this.textBox2.TabIndex = 3;
this.textBox2.Text = "";
// 
// button1
// 
this.button1.Location = new System.Drawing.Point(32, 144);
this.button1.Name = "button1";
this.button1.TabIndex = 4;
this.button1.Text = "登陆";
this.button1.Click += new System.EventHandler(this.button1_Click);
// 
// button2
// 
this.button2.Location = new System.Drawing.Point(144, 144);
this.button2.Name = "button2";
this.button2.TabIndex = 5;
this.button2.Text = "取消";
this.button2.Click += new System.EventHandler(this.button2_Click);
// 
// Form1
// 
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(292, 205);
this.Controls.Add(this.button2);
this.Controls.Add(this.button1);
this.Controls.Add(this.textBox2);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.label2);
this.Controls.Add(this.label1);
this.Name = "Form1";
this.Text = "登陆";
this.ResumeLayout(false); }
#endregion /// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main() 
{
Application.Run(new Form1());
} private void button1_Click(object sender, System.EventArgs e)
{
if(textBox1.Text==""&&textBox2.Text=="")
{MessageBox.Show("请输入你的用户名和密码","警告");}
else
{
try{
string name=textBox1.Text;
string pass=textBox2.Text;
string strConn="Initial catalog=user;data source=蓝色地狱;user id=sa;password=admin";
SqlConnection conn=new SqlConnection(strConn);
conn.Open();

SqlCommand cmd=new SqlCommand();
cmd.CommandText="select * from admin where username='"+name+"'";
SqlDataReader dr=cmd.ExecuteReader();
if(dr.Read())
{
string username=dr["username"].ToString();
string password=dr["password"].ToString();
if(pass==password)
{
Form2 f2=new Form2();
f2.ShowDialog();
}
else
{MessageBox.Show("你的密码不正确!");}
}
else
{MessageBox.Show("没有你的用户名吧!");}
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
} private void button2_Click(object sender, System.EventArgs e)
{
this.Close();
}
}
}
请大家帮帮我~

解决方案 »

  1.   


    你把
    SqlCommand cmd=new SqlCommand(); 
    cmd.CommandText="select * from admin where username= '"+name+" '"; 
    换成
    SqlCommand cmd=new SqlCommand("select * from admin where username= '"+name+",conn ); 
    试试
      

  2.   

    上面的我复制你的SQL语句有误.你把
    SqlCommand cmd=new SqlCommand(); 
    cmd.CommandText="select * from admin where username= '"+name+" '"; 
    换成
    SqlCommand cmd=new SqlCommand("你的SQL语句",conn ); 
    试试
      

  3.   

    是不是输入的密码字符里面有空格,去掉空格试一下
    string pass = textBox2.Text.Trim();private void button1_Click(object sender, System.EventArgs e)
            {
                if (textBox1.Text == "" && textBox2.Text == "")
                { MessageBox.Show("请输入你的用户名和密码", "警告"); }
                else
                {
                    try
                    {
                        string name = textBox1.Text.Trim();
                        string pass = textBox2.Text.Trim();
                        string strConn = "Initial catalog=user;data source=蓝色地狱;user id=sa;password=admin";
                        SqlConnection conn = new SqlConnection(strConn);
                        conn.Open();                    SqlCommand cmd = new SqlCommand();
                        cmd.CommandText = "select * from admin where username= '" + name + " '";
                        SqlDataReader dr = cmd.ExecuteReader();
                        if (dr.Read())
                        {
                            string username = dr["username"].ToString().Trim();
                            string password = dr["password"].ToString().Trim();
                            if (pass == password)
                            {
                                Form2 f2 = new Form2();
                                f2.ShowDialog();
                            }
                            else
                            { MessageBox.Show("你的密码不正确!"); }
                        }
                        else
                        { MessageBox.Show("没有你的用户名吧!"); }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
            }
      

  4.   

    如果我要把这个winform界面的这个username这个变量的值传到另一个winform界面
    显示为:欢迎你,username,
    这个怎么实现啊
      

  5.   

    你做什么系统
    做几个Session吧 ,什么ID,userName都存起来,你想到哪用到哪取Session不就得了