Dil*_*dra 0 c# asp.net if-statement
我在我的一个程序中有以下IF条件,我设置条件来验证强制文本字段是否为空,如果是,则显示错误消息,但即使必填字段为空,仍然保存记录而不管必须填写.
if (!txt_teacherid.Equals(null) && !txt_teacherid.Equals("") && !txt_teacherfname.Equals(null) && !txt_teacherfname.Equals("") && !txt_teacherlname.Equals(null) && !txt_teacherlname.Equals("") && !txt_teacherdob.Equals(null) && !txt_teacherdob.Equals("") && !txt_teachernationality.Equals(null) && !txt_teachernationality.Equals("") && !txt_teacheraddress.Equals(null) && !txt_teacheraddress.Equals(""))
{
String teacherid = txt_teacherid.Text.Trim();
String teacherfname = txt_teacherfname.Text.Trim();
String teacherlname = txt_teacherlname.Text.Trim();
String teachergender = opt_gender.SelectedItem.Value.ToString();
String teachercivilstatus = opt_civilstatus.SelectedItem.Value.ToString();
String teacherdob = txt_teacherdob.Text.Trim();
String teachernationality = txt_teachernationality.Text.Trim();
String teacheraddress = txt_teacheraddress.Text.Trim();
String teachercontactno = txt_teachercontactno.Text.Trim();
String teacherqualification = txt_teacherqualification.Text.Trim();
String teacherexperience = txt_teacherexperience.Text.Trim();
String teacherjobtitle = txt_teacherjobtitle.Text.Trim();
String teacherjoindate = txt_teacherjoindate.Text.Trim();
String imgpath = (String)Session["imagepath"];
DBConnection db = new DBConnection();
db.getConnection();
db.executeUpdateQuery("INSERT INTO Teacher (TeacherID,TeacherFirstName,TeacherLastName,TeacherGender,TeacherDOB,TeacherCivilStatus,TeacherNationality,TeacherQualification,TeacherExperience,TeacherJobTitle,TeacherAddress,TeacherContactNo,TeacherJoinDate,ImagePath) VALUES ('" + teacherid + "','" + teacherfname + "','" + teacherlname + "','" + teachergender + "','" + teacherdob + "','" + teachercivilstatus + "','" + teachernationality + "','" + teacherqualification + "','" + teacherexperience + "','" + teacherjobtitle + "','" + teacheraddress + "','" + teachercontactno + "','" + teacherjoindate + "','" + imgpath + "')");
Session["imagepath"] = null;
Page.ClientScript.RegisterStartupScript(this.GetType(), "Call my function", "recordInserted();window.location.href='AdminRegisterTeacher.aspx'", true);
//Response.Redirect("AdminRegisterTeacher.aspx");
}
else
{
InnerError ie = new InnerError();
ie.throwError("Oops! There was an error, Make sure you have filled all mandatory data");
}
Run Code Online (Sandbox Code Playgroud)
if (!txt_teacherid.Equals(null) && !txt_teacherid.Equals("")...这是错误的,因为你正在检查控件 txt_teacherid而不是文本.
它应该只是
if (!String.IsNullOrEmpty(txt_teacherid.Text.Trim())... )
Run Code Online (Sandbox Code Playgroud)
或者使用String.IsNullOrWhiteSpace(.Net 4及更高版本):
if (!String.IsNullOrWhiteSpace(txt_teacherid.Text) && ... )
Run Code Online (Sandbox Code Playgroud)
还要注意,您应该使用参数化查询来防止SQL注入.
| 归档时间: |
|
| 查看次数: |
72 次 |
| 最近记录: |