问题
through the UserPrincipal Class I can set the UserPrincipalName and thus when my user is created the first part of the User logon name is populated:
up.UserPrincipalName = "ryan.anthony3";
produces the following result:
however that drop down is empty unless I choose one of the options through the interface
I'd like to set one of the available options programmatically using this UserPrincipal class if possible... is that possible?
I am not seeing a setter for it here: http://msdn.microsoft.com/en-us/library/system.directoryservices.accountmanagement.userprincipal%28v=vs.110%29.aspx
回答1:
UserPrincipalName is what you're looking for.
Use up.UserPrincipalName = "ryan.anthony3@yourDomain.Com";
回答2:
User Principal Name in Active Directory, looks in the GUI tools, like it has two components, the parts on either side of the @ sign.
But in reality the database stores it as a single string.
The splitting of the two components is just meant as a convenience for administrators only.
When you set the value, you must set the complete value. AD does NOT validate the string you enter, you can in fact enter complete nonsense and it will accept it. (It won't 'work' for useful things, but it will accept it).
来源:https://stackoverflow.com/questions/20710535/is-there-a-way-to-set-a-new-users-domain-suffix-through-the-userprincipal-class