首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

在GridView中插入数据点击两次才能生效,该怎么解决

2012-04-12 
在GridView中插入数据点击两次才能生效我写了一个在方法第一次点击添加的时候没有反应,第二次点击才能运行

在GridView中插入数据点击两次才能生效
我写了一个在方法第一次点击添加的时候没有反应,第二次点击才能运行但是密码不能插入,,但是有时 不是 这样,,这是什么原因帮我看一下

点击添加 让ViewState["UserId"]) ==0然后判断ViewState["UserId"]) ==0是真 或者假的话执行下面 的语句


if (Convert.ToInt32(ViewState["UserId"]) ==0)
  {
  bool bflog = true;
  SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["JXPG"].ConnectionString);
  cn.Open();
  string sql = "SELECT * FROM Sys_Membership WHERE UserName=@UserName";
  SqlCommand cm = new SqlCommand(sql, cn);
  cm.Parameters.Add("UserName", SqlDbType.NVarChar);
  cm.Parameters["UserName"].Value = TxtUserName.Text;
  SqlDataReader dr = cm.ExecuteReader();
  if(dr.Read())
  {

  bflog = false;

  }
   
   
  dr.Close();
  if (bflog == true)
  {
  SqlConnection cns = new SqlConnection(ConfigurationManager.ConnectionStrings["JXPG"].ConnectionString);
  cns.Open();

  string sqls = "INSERT INTO Sys_Membership(UserName,Pwd,Alias,LogInCount,Pass) VALUES(@UserName,@Pwd,@Alias,@LogInCount,@Pass)";
  SqlCommand cms = new SqlCommand(sqls, cns);
  cms.Parameters.Add("@UserName", SqlDbType.NVarChar);
  cms.Parameters.Add("@Alias", SqlDbType.NVarChar);
  cms.Parameters.Add("@Pwd", SqlDbType.NVarChar);
  cms.Parameters.Add("@LogInCount", SqlDbType.Int);
  cms.Parameters.Add("@Pass", SqlDbType.Int);
  cms.Parameters["@UserName"].Value = TxtUserName.Text.Trim();
  cms.Parameters["@Alias"].Value = TxtAlias.Text.Trim();
  cms.Parameters["@LogInCount"].Value = 1;
  cms.Parameters["@Pass"].Value = 1;
  cms.Parameters["@Pwd"].Value = sl.GetFinallPwd(TxtPwd.Text).Trim();
  cms.ExecuteNonQuery();
  cns.Close();
  BindDate();
  }

[解决办法]
断点单步调试一下,为什么第一次点击后没有完成相关代码。
[解决办法]

这个自己调试好一些。。

if (Convert.ToInt32(ViewState["UserId"]) ==0)
{
bool bflog = true;
SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["JXPG"].ConnectionString);
}

你这判断的用意是什么?


[解决办法]
“添加修改都是一个”就很成问题,很不对路。当点击按钮的时候,你的这些程序当然应该写在按钮的事件处理程序中啦。难道你误写到page_load中去了?

热点排行