使用n层更新数据没有任何作用

本文关键字:任何 作用 数据 更新 使用 | 更新日期: 2023-09-27 18:26:27

我有三层,在业务层执行我的代码,我运行代码更新

public override bool LoadProperties2List(string TypeOfOperation)
{
  SortedList Sl = new SortedList();
  Sl.Add("@CommandType", TypeOfOperation);
  Sl.Add("@UserName",UserName);
  Sl.Add("@SecondarySchool",SecondarySchool);
  Sl.Add("@University",University);
  Sl.Add("@Qualification",Qualification);
  Sl.Add("@JobTitle",JobTitle);
  Sl.Add("@Company",Company);
  Sl.Add("@PhotoUrl", PhotoUrl);
  ProcedureName = "MangeUserInfo";
  if (db.RunProcedure(ProcedureName, Sl) == 1)
  return true;
  else
  return false;
}
public bool updateUser(string User, string SecondaryS, string Unvi, string Qua, string jobtitle, string company)
{
  this.UserName = User;
  this.SecondarySchool = SecondaryS;
  this.University = Unvi;
  this.Qualification = Qua;
  this.JobTitle = jobtitle;
  this.Company = company;
  if (Update())
  return true;
  else
  return false;
 }

以及在数据访问层中

public void ConnectDB(CommandType CT,string ProNameSQl)
{
  cn = new SqlConnection("Data Source=.;Initial Catalog=Conversation;Integrated Security=True");
  cmd = new SqlCommand();
  cmd.Connection = cn;
  cmd.CommandType = CT;
  cmd.CommandText = ProNameSQl;
  cn.Open();
}
public int RunProcedure(string ProcedureName, SortedList Paraval)
{
  ConnectDB(CommandType.StoredProcedure, ProcedureName);
  for (int x = 0; x < Paraval.Count; x++)
  {
  try
  {
  cmd.Parameters.AddWithValue(Paraval.GetKey(x).ToString(), Paraval.GetByIndex(x));
  }
  catch
  {
  ;
  }
  }
  return ExceNoneQuery();
}

然后在另一层,我用这个方法调用过程进程类型并运行

public bool Update()
{
  return LoadProperties2List("u");
  }

最后一层表示层

我做

protected void btnsave_Click(object sender, EventArgs e)
{
  //upadate info
  bool Result = false;
  UsersInfo Upd = new UsersInfo();
  try
  {
  Result = Upd.updateUser(username, TxtSecondarySchool.Text, TxtUniversity.Text, TxtQualification.Text, TxtJobTitle.Text, TxtCompany.Text);
  if (Result==true)
  lblMessage.Text = "Record Updated Successfully.";
  else
  lblMessage.Text = "Record couldn't updated";
  }
  catch (Exception ee)
  {
  lblMessage.Text = ee.Message.ToString();
  }  finally
  {
  Upd = null;
  }
}

当我运行代码时,结果只有

lblMessage.Text = "Record couldn't updated"; 

是什么错误导致它不能正常工作?

我还发现一些奇怪的事情,文本框不接受新的值——尽管发生了变化,但它传递了相同的值——为什么?我需要帮助

使用n层更新数据没有任何作用

错误是文本框加载到页面的启动事件中的例程中,而该例程位于If IsNotPostback循环之外。因此,默认值只是在每次刷新页面时重新加载,因此看起来是"不可更改的"。