2016-06-24 11 views
0

もう一度お聞きしたい。どのように私はこの問題にASP.NETでパスワードを変更する例外をスローする

Eror Picture

を解決することができ、常にエラーを見つけ、私は停止しません。私はあなたたちの助けを借りて試す必要があります。あなたは私のエラーを見た後 、これは私のコードです:

using System; 
 
using System.Web; 
 
using System.DirectoryServices; 
 
using System.DirectoryServices.AccountManagement; 
 
using System.Web.SessionState; 
 

 
namespace FormsAuthAd 
 
{ 
 
    public class ChangePasswordPSI 
 
    { 
 
     public bool ChangePass(HttpSessionState Session, string OldPassword, string NewUPassword) 
 
     { 
 
      string Domain = Session["domain"].ToString(); 
 
      string Username = Session["username"].ToString(); 
 
      
 
      try 
 
      { 
 
       string ldapPath = "LDAP://MyDomain.com"; 
 
       DirectoryEntry user = new DirectoryEntry(ldapPath, Domain + "\\" + Username, OldPassword); 
 

 
       if (user != null) 
 
       { 
 
        DirectorySearcher search = new DirectorySearcher(user); 
 
        search.Filter = "(SAMAccountName=" + Username + ")"; 
 
        search.PropertiesToLoad.Add("cn"); 
 
        SearchResult result = search.FindOne(); 
 
        if (result != null) 
 
        { 
 
         object ret = user.Invoke("ChangeUserPassword", new object[] { OldPassword, NewUPassword }); 
 
         user.CommitChanges(); 
 
       
 

 
         return true; 
 
        } 
 
        
 
       } 
 

 
      } 
 
      catch (Exception ex) 
 
      { 
 
       throw ex; 
 
      } 
 
      return false; 
 
     }   
 
     
 
    } 
 
}

誰かが私は何をすべき、私に言うことができますか? ありがとうございます

答えて

0

try..catchを使用していて、例外がどこで発生したのか正確に見つからない場合は、tryとcatchを削除して再度実行してください。あなたの例では、それはInvoke("ChangeUserPassword"...に起こるかもしれない - 私の知る限り、メソッド名は「のChangePassword」

https://msdn.microsoft.com/en-us/library/ms180896(v=vs.80).aspx

する必要があります見て
関連する問題