日期:2014-05-17  浏览次数:20522 次

哪位懂ASP.net的大神帮我一下啊
protected void Button1_Click(object sender, EventArgs e)
  {
   
  string strConn = ConfigurationManager.AppSettings["ConnString"];
  SqlConnection Conn = new SqlConnection(strConn);
  string sql = "SELECT PeopleID, PeopleName,Pwd FROM PI WHERE PeopleName='"+TextBox1.Text+"'";
  SqlDataAdapter adp = new SqlDataAdapter(sql, Conn);
  DataTable dt = new DataTable();
  adp.Fill(dt);
  SqlCommand cmd = new SqlCommand(sql, Conn);
  if (Conn.State != ConnectionState.Open)
  {
  Conn.Open();
  }
  cmd.ExecuteNonQuery();
  Conn.Close();

  if (dt.Rows.Count > 0)
  {
  if (TextBox2.Text == dt.Columns["Pwd"].ToString())
  {
  Response.Redirect("login.aspx");
  }
  Response.Write("<script language='javascript'>alert('密码错误!');</script>");
  }
  Response.Write("<script language='javascript'>alert('您还没有注册!');</script>"); 
   

下面是我的连接字符串配置<appSettings>
  <add key="ConnString" value="server=.;database=Datebase;User ID=;password=;Persist Security Info=true;"/>
   
  </appSettings>
数据库在本机上有,我就是想用vs2010仿真一下,很简单的。小弟新手,程序出错不知道问题所在,就是显示用户代码未处理!可否有高手解答?

------解决方案--------------------
<add key="ConnString" value="server=.;database=Datebase;User ID=;password=;Persist Security Info=true;"/>
第一步:检查配置连接字符串,写完整,User ID=用户名 password=密码 database=你的数据库名称
另外server=你要连接的地址(.代表你本机 ,或者你在此写你要连接机器的IP地址)

第二步:
测试是否连接上数据库,断点跟踪一下Conn 看看是否连接上并打开

第三步:
断点跟踪一下你的dt看里面是否有数据,如果没数据看看数据表中是否有数据,最好把你的SQL拿到数据库中查询一下。

代码写的不是很规范需要多写哦。

------解决方案--------------------
修改下:
 string strConn = ConfigurationManager.AppSettings["ConnString"];
SqlConnection Conn = new SqlConnection(strConn);

if (Conn.State != ConnectionState.Open)
{
Conn.Open();
}

string sql = "SELECT PeopleID, PeopleName,Pwd FROM PI WHERE PeopleName='"+TextBox1.Text+"'";
SqlDataAdapter adp = new SqlDataAdapter(sql, Conn);
DataTable dt = new DataTable();
adp.Fill(dt);
Conn.Close();
------解决方案--------------------
探讨

各位大神,谁知道user id可不可以填administrator阿,我登陆sql server的时候就是用的windows验证登陆 的,每次都是用户登陆失败。。。。