4

私は断続的にポップアップする奇妙なSystem.DirectoryServices問題があります。System.DirectoryServicesの断続的例外

以下の例外は以下のコードで定期的に送出されます

private PrincipalSearchResult<Principal> GetAuthorizationGroups(UserPrincipal userPrincipal, int tries) 
    { 
     try 
     { 
      //Exception is thrown on this line below 
      return userPrincipal.GetAuthorizationGroups(); 
     } 
     catch (AppDomainUnloadedException ex) 
     { 
      if (tries > 5) 
      { 
       throw; 
      } 
      tries += 1; 
      Thread.Sleep(5000); 
      return GetAuthorizationGroups(userPrincipal, tries); 
     } 
     catch (Exception ex) 
     { 
      throw; 
     } 
    } 

例外スタックトレースSystem.Reflection.RuntimeAssembly._nLoad(のAssemblyNameファイル名、文字コードベース、証拠assemblySecurity、RuntimeAssembly locationHint、StackCrawlMark & stackMarkで、ブールthrowOnFileNotFound 、Boolean forIntrospection、ブールsuppressSecurityChecks)System.DirectoryServices.AccountManagement.UnsafeNativeMethods.IADsPathname.Retrieve(Int32 lnFormatType)at System.DirectorySでSystem.Reflection.RuntimeAssembly.LoadWithPartialNameInternal(AssemblyName、Evidence securityEvidence、StackCrawlMark & stackMark) System.DirectoryServices.AccountManagement.UserPrincipal.GetAuthorizationGroupsHelperでSystem.DirectoryServices.AccountManagement.ADStoreCtx.GetGroupsMemberOfAZ(プリンシパルP)(AT System.DirectoryServices.AccountManagement.ADStoreCtx.get_DnsDomainNameでervices.AccountManagement.ADStoreCtx.LoadDomainInfo()())

何か非常に奇妙なException.Messageは: ファイルまたはアセンブリ 'MyCustomAssembly.XmlSerializers'またはその依存関係の1つを読み込めませんでした。システムは指定されたファイルを見つけることができません

面白いことに、MyCustomAssemblyはこのアセンブリでも参照されません。

私はException.Messageがデバッグ情報と不一致であり、実際のStacktraceが多かれ少なかれ正しいExceptionであると思います。

これはなぜ起こっているのですか?

+0

これは正常です。 Debug + Exceptionsを選択し、Throwボックスのチェックを外してCLR例外を解除します。 –

+0

[ApplicationSettingsBaseのFileNotFoundException]の複製があります(http://stackoverflow.com/questions/3494886/filenotfoundeception-in-applicationsettingsbase) –

+0

私はちょうどその例外をキャッチして無視するべきですか? – Fox

答えて

4

私はあなたにこれまで長いこと尋ねたことは知っていますが、私はこの問題を自分で解決してビルド構成マネージャーを通過し、すべてのプロジェクトが同じCPUをターゲットにしていることを確認して解決しました。 」と、x86向けのWindowsフォームテストアプリケーションを開発しました。私はこれをAny CPUに変更し、問題はなくなりました。

たちは.NET 4.5フレームワーク(私たちはFileNotFoundExceptionNotSupportedExceptionに遭遇された)に、サーバーをアップグレードしたときにこれが最近、私たちに何が起こったhere

0

からヒントを得ました。私たちのソリューションは.NET 4をターゲットにしていたので、.NET 4.5.NET 4アプリケーションを実行してActive Directoryに接続しようとすると、いくつかの後方互換性の問題があると思われます。

解決策をターゲット4.5に切り替えて、サーバーに再公開することは、このトリックを実行したようです。

これを達成する方法は以下のとおりです。

ソリューションのターゲット4.5内のすべてのプロジェクトがあることを確認します。

右プロジェクト]をクリックします - >Properties - >Application Tabまた

enter image description here

IISが正しいフレームワークのバージョンを使用していることを確認(AT投稿時には、4.0をターゲットにする必要があります。):

関連する問題