我有以下问题。
我的自动属性 SearchedObjClass,SearchedProp ,SearchedPropValue 结果为空值,尽管我在主程序中为它们分配了值:有人可以帮我找出问题所在:
class ADClassNew
{
public static DirectoryEntry createDirectoryEntry()
{
string ldapusername = "Username";
string ldapuserpass = "Password";
using (DirectoryEntry root =new DirectoryEntry())
{
ADClassNew adclass = new ADClassNew();
root.Path = adclass.LdapPath;
root.Username = ldapusername;
root.Password = ldapuserpass;
root.AuthenticationType = AuthenticationTypes.Secure;
return root;
}
}
public string SearchedObjClass { get; set; }
public string SearchedProp { get; set; }
public string SearchedPropValue { get; set; }
public string LdapPath { get; set; }
public StringCollection LoadProperties { get; set; }
public SearchResult searchDirectory()
{
DirectoryEntry searchEntry = ADClassNew.createDirectoryEntry();
DirectorySearcher search = new DirectorySearcher();
search.SearchRoot = searchEntry;
ADClassNew adclassnew = new ADClassNew();
//string _searchedObjClass = SearchedObjClass;
//string _searchedProp = SearchedProp;
//string _searchedPropValue = SearchedPropValue;
search.Filter = string.Format("(&(ObjectClass={0})({1}={2}))", adclassnew.SearchedObjClass, adclassnew.SearchedProp, adclassnew.SearchedPropValue);
//search.Filter = "(&(objectClass=user)(cn=administrator))";
search.PropertiesToLoad.Add("memberof");
SearchResult result = search.FindOne();
return result;
}
}
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
ADClassNew adclassnew = new ADClassNew();
adclassnew.LdapPath = "LDAP://MyDomain";
adclassnew.SearchedObjClass = "User";
adclassnew.SearchedProp = "Displayname";
adclassnew.SearchedPropValue = "administrator";
}
}