最近、ASP.NET アプリケーションを IIS5 を実行している古いサーバーから IIS7.5 を実行している新しいサーバーに移動しました。
アプリケーションで次のエラーが表示されます。
(&(objectCategory=person)(sAMAccountName=)) 検索フィルターが無効です。
説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。例外の詳細: System.ArgumentException: (&(objectCategory=person)(sAMAccountName=)) 検索フィルターが無効です。
AD を検索する関数は次のとおりです。
public static string Get_AD_User_Email(string username)
{
try
{
DirectorySearcher searcher = new DirectorySearcher("(&(objectCategory=person)(sAMAccountName=" + username + "))");
SearchResult result = searcher.FindOne();
if (result != null)
{
DirectoryEntry employee = result.GetDirectoryEntry();
if (employee.Properties["mail"] != null)
{
return employee.Properties["mail"].Value.ToString();
}
else return "NULL";
}
else throw new Exception("ERROR: Problem searching active directory for users.");
}
catch (Exception ex) { throw ex; }
}
奇妙なことは、Visual Studio でのデバッグ時に Web サイトが実行され、IIS からのみクラッシュすることです。
誰かが私を助けることができますか?