在保存按钮上实现检查可用性功能
本文关键字:性功能 检查 实现 保存 按钮 | 更新日期: 2023-09-27 18:06:16
我创建了一个aspx形式的链接按钮,用于检查登录电子邮件地址的可用性,其功能如下。
protected void lnkCheckAvailable_Click(object sender, EventArgs e)
{
SystemUserBL bl = new SystemUserBL(SessionContext.SystemUser);
ds = new DataSet();
bl.FetchForLoginEmailAddress(ds, txtLoginEmailAddress.Text);
if (ds.Tables[0].Rows.Count > 0)
{
valDuplicatePassword.Visible = true;
valDuplicatePassword.Text = "<b>This User Name is already in use by another user.</b>";
}
else
{
valDuplicatePassword.Visible = true;
valDuplicatePassword.Text = "<b>Congratulations! " + txtLoginEmailAddress.Text + " is available.</b>";
}
}
当用户点击检查可用性链接按钮时,工作正常。还有一个"Save"按钮,用于保存表格中的用户信息。现在我的问题是,如果它显示"此用户名已被另一个用户使用"消息,该信息仍然保存在数据库中。请告诉我如何防止这种情况!!
根据用户名在数据库中是否存在返回true
或false
。你可以创建一个方法来检查用户的可用性。
当用户按下保存按钮时,如果方法返回true
,则调用该方法,这意味着用户存在。
private bool CheckUserAvailability()
{
SystemUserBL bl = new SystemUserBL(SessionContext.SystemUser);
ds = new DataSet();
bl.FetchForLoginEmailAddress(ds, txtLoginEmailAddress.Text);
if (ds.Tables[0].Rows.Count > 0)
{
valDuplicatePassword.Visible = true;
valDuplicatePassword.Text = "<b>This User Name is already in use by another user.</b>";
return true;
}
else
{
valDuplicatePassword.Visible = true;
valDuplicatePassword.Text = "<b>Congratulations! " + txtLoginEmailAddress.Text + " is available.</b>";
return false;
}
}
您也可以在link
click上调用此方法。
protected void lnkCheckAvailable_Click(object sender, EventArgs e)
{
CheckUserAvailability();
}
如果用户不存在,你将在Save
按钮上调用这个方法,然后将信息保存在数据库中。
protected void Savebtn_Click(object sender, EventArgs e)
{
if(CheckUserAvailability() == false)
{
SaveUserInfoToDataBase();
}
}