public bool ChangePassword(string userName, string oldPassword, string newPassword) { if (String.IsNullOrEmpty(userName)) { throw new ArgumentException("Value cannot be null or empty.", "userName"); } if (String.IsNullOrEmpty(oldPassword)) { throw new ArgumentException("Value cannot be null or empty.", "oldPassword"); } if (String.IsNullOrEmpty(newPassword)) { throw new ArgumentException("Value cannot be null or empty.", "newPassword"); } // The underlying ChangePassword() will throw an exception rather // than return false in certain failure scenarios. try { MembershipUser currentUser = _provider.GetUser(userName, true /* userIsOnline */); return(currentUser.ChangePassword(oldPassword, newPassword)); } catch (ArgumentException) { return(false); } catch (MembershipPasswordException) { return(false); } }