private void btn_sabt_Click(object sender, EventArgs e) { if (this.formtype == 1) ///add user { if (!CheckNotNull()) { return; } try { //// check not duplicate user var checkRepeateUsername_query = (from U in database.Users where U.Username == txt_username.Text.Trim() where U.Activity == 1 select U).ToList(); if (checkRepeateUsername_query.Count == 1) { MessageBox.Show("The username entered is already selected"); return; } /////////////hashing password SHA256CryptoServiceProvider SHA256 = new SHA256CryptoServiceProvider(); Byte[] B1; Byte[] B2; B1 = UTF8Encoding.UTF8.GetBytes(txt_password.Text.Trim()); B2 = SHA256.ComputeHash(B1); string HashedPassword = BitConverter.ToString(B2); //////////// Create Image Array FileStream fs_userImage = new FileStream(userImageName, FileMode.Open, FileAccess.Read); byte[] imageByteArray = new byte[fs_userImage.Length]; fs_userImage.Read(imageByteArray, 0, Convert.ToInt32(fs_userImage.Length)); fs_userImage.Close(); //////////// Create Signature Image FileStream fs_UserSignature = new FileStream(UserSignatureName, FileMode.Open, FileAccess.Read); byte[] imageByteArray_Signature = new byte[fs_UserSignature.Length]; fs_UserSignature.Read(imageByteArray_Signature, 0, Convert.ToInt32(fs_UserSignature.Length)); fs_UserSignature.Close(); ///// check Gender byte checkGender = 0; if (rdb_man.Checked) { checkGender = 1; } else { checkGender = 2; } /////// Get Birthday Date string Birthday = string.Format("{0:yyyy/MM/dd}", Convert.ToDateTime(persianDate_birthDay.Value.Year + "/" + persianDate_birthDay.Value.Month + "/" + persianDate_birthDay.Value.Day)); database.Sp_insert_Users(txt_name.Text, txt_family.Text, txt_username.Text, HashedPassword, txt_personalCode.Text, txt_email.Text, checkGender, 1, txt_tel.Text, Birthday.Trim(), imageByteArray , lbl_date.Text, imageByteArray_Signature); database.SaveChanges(); MessageBox.Show("New user created successfully"); this.Close(); } catch { MessageBox.Show("Errors in recording information. Please try again."); } } else if (this.formtype == 2) //// update user (s.20) { if (!CheckNotNull_forUpdateUser()) { return; } try { byte[] imageByteArray = null; if (userImageName != null) { //////////// Create User Image Array FileStream fs_userImage = new FileStream(userImageName, FileMode.Open, FileAccess.Read); imageByteArray = new byte[fs_userImage.Length]; fs_userImage.Read(imageByteArray, 0, Convert.ToInt32(fs_userImage.Length)); fs_userImage.Close(); } ///// check Gender byte checkGender = 0; if (rdb_man.Checked) { checkGender = 1; } else { checkGender = 2; } /////// User Birthday Date string Birthday = string.Format("{0:yyyy/MM/dd}", Convert.ToDateTime(persianDate_birthDay.Value.Year + "/" + persianDate_birthDay.Value.Month + "/" + persianDate_birthDay.Value.Day)); if (userImageName != "") { database.Sp_Update_Users(this.userID, txt_name.Text.Trim(), txt_family.Text.Trim(), txt_personalCode.Text.Trim(), txt_email.Text.Trim(), checkGender, txt_tel.Text.Trim(), Birthday, imageByteArray); } else if (userImageName == "") { database.Sp_Update_Users_noImage(this.userID, txt_name.Text.Trim(), txt_family.Text.Trim(), txt_personalCode.Text.Trim(), txt_email.Text.Trim(), checkGender, txt_tel.Text.Trim(), Birthday); } database.SaveChanges(); MessageBox.Show("User information successfully edited"); this.Close(); } catch { MessageBox.Show("There was a problem registering user information. Please try again"); return; } } }