2016-03-28 32 views
3

現在のhttp要求ユーザーの詳細を検索するために、.Netアカウント管理ライブラリを使用してActive Directoryにアクセスしています。 私のアプリケーションプールはカスタムアカウントで実行され、同じドメインからも実行されます。サーバーとユーザーも同じドメインに属します。Active Directoryから断続的に不明なエラーが発生しました。

public string GetEmployeeId(string SAMAccountName) 
{ 
using (PrincipalContext domainContext = new PrincipalContext(ContextType.Domain)) 
{ 
using (UserPrincipal userprincipal = new UserPrincipal(domainContext)) 
{ 
userprincipal.SamAccountName = SAMAccountName; 
using (PrincipalSearcher ps = new PrincipalSearcher()) 
{ 
ps.QueryFilter = userprincipal; 
UserPrincipal user = ps.FindOne() as UserPrincipal; 
return user.EmployeeId; 
} 
} 
} 
} 

セットアップは完全しかし断続私はそれがすべてのエラーなし同じユーザのために働くいつかAD.afterからのエラーの下に取得します動作します。

このエラーの原因を見つけるために、AD側のログ/イベントを確認する方法はありますか。

System.Runtime.InteropServices.COMException(0X80005000):不明なエラー>(0X80005000)

+0

https://support.microsoft.com/en-gb/kb/324433 – Ashigore

+0

コメントありがとうございます。しかし、私はこのサーバーの問題が2000年に判明しており、バージョンは2012年です。 –

+0

私は同じ問題を抱えていますが、それはすぐには起こりません。一度それが起こると、それは私が手動でリサイクルのApp Poolに行くまでそのようにとどまります。 – icedek

答えて

-1

あなたが使用するどのようなドメインのサーバーを識別するようにしてください: =新しいPrincipalContext:よう

何かを(ContextType.Domain、 "YOURADDOMAIN");

+0

返信してくれてありがとう。私のサーバー、アプリケーションプール、およびクライアントユーザーは、すべて同じドメインのものです。このコードは機能しますが、クライアントがこのエラーを受け取り、後で同じクライアントに対して完全に機能することがあります。私はこのエラーがAD側からだと思っています。 –

関連する問題