【发布时间】:2012-08-28 11:06:36
【问题描述】:
我想更新现有记录。我也调试了我的代码。 int id 变量获取值,但不知道为什么我的记录没有更新。
SQLDBDataClassesDataContext dContext = new SQLDBDataClassesDataContext();
protected void Page_Load(object sender, EventArgs e)
{
//if (!IsPostBack)
{
if (!string.IsNullOrEmpty(Request.QueryString["fname"]))
{
FirstNameTextBox.Text = Request.QueryString["fname"];
}
if (!string.IsNullOrEmpty(Request.QueryString["lname"]))
{
LastNameTextBox.Text = Request.QueryString["lname"];
}
if (!string.IsNullOrEmpty(Request.QueryString["cellnum"]))
{
CellNumberTextBox.Text = Request.QueryString["cellnum"];
}
}
}
protected void UpdateButton_Click(object sender, EventArgs e)
{
int id = Convert.ToInt32(Request.QueryString["id"]);
var updatequery1 = dContext.PersonalDetailTables
.Where(pd => pd.ID == id).SingleOrDefault();
if (updatequery1 != null)
{
updatequery1.FirstName = FirstNameTextBox.Text;
updatequery1.LastName = LastNameTextBox.Text;
updatequery1.CellNumber = CellNumberTextBox.Text;
dContext.SubmitChanges();
}
}
【问题讨论】:
-
尝试在该部分的 if 和 else 中显示一条消息,看看显示的是什么消息,这样你就知道它是否进入了 if 语句。
-
您确定正确使用了 DataContext 吗?从您的代码中不清楚什么是上下文以及它来自哪里。
-
@SynerCoder.. 它进入 if(updatequery1!= null) 子句.. 但在这里,值保持不变并且没有改变