0
asp.NET MVC5 Webサイトを使用してActive Directory内のユーザーを調査しています。私は無効な検索を行うと(。たとえば、「"éééézztaaz」)、ArgumentExceptionが投げ続けたが、私はそれを理解していないここで検索する私の方法です。Active Directoryの検索では、無効な名前の例外がスローされます。
はpublic List<ADProperties> SearchUserByName(string name)
{
//ADProperties is a POCO to store values retrieved
try
{
List<ADProperties> theListIWant = new List<ADProperties>();
//createDirectoryEntry() is a method to establish a connection to Active Directory
DirectoryEntry ldapConnection = createDirectoryEntry();
DirectorySearcher search = new DirectorySearcher(ldapConnection);
//Search filter to find users
search.Filter = "(&(objectClass=user)(anr=" + name + "))";
///Properties to load
search.PropertiesToLoad.Add("objectSID");
search.PropertiesToLoad.Add("displayName");
search.PropertiesToLoad.Add("distinguishedName");
resultCollection = search.FindAll();
//ArgumentException at if statement
//I put this to AVOID exceptions, then in my controller, if value is null
//I return a different view
if (resultCollection==null ||resultCollection.Count==0)
{
return null;
}
}
else
{ //Do stuff and return
return theListIWant;
}catch(ActiveDirectoryOperationException e)
{
Console.WriteLine("Active Directory Operation Exception caught: " + e.ToString());
}
return null;
}
正確な例外がある:
検索フィルタ(&(objectClassの=ユーザー)(ANR =))(フランス語からの翻訳)
有効ではありません
だから私は、「ドンそれを得る。私は例外をスローするのを避けるために条件を追加しましたが、明らかにそれは助けになりません。
ええ、例外の全体のポイント、感謝! –