C# 如何使用ExtensionSet清除/删除ActiveDirectory属性
我正在为AD中的用户使用,以访问UserPrincipal通常检索不到的属性。我的自定义属性定义如下:C# 如何使用ExtensionSet清除/删除ActiveDirectory属性,c#,active-directory,C#,Active Directory,我正在为AD中的用户使用,以访问UserPrincipal通常检索不到的属性。我的自定义属性定义如下: [DirectoryProperty("facsimileTelephoneNumber")] public string FaxNumber { get { if (ExtensionGet("facsimileTelephoneNumber").Length != 1) retu
[DirectoryProperty("facsimileTelephoneNumber")]
public string FaxNumber
{
get
{
if (ExtensionGet("facsimileTelephoneNumber").Length != 1)
return null;
return (string)ExtensionGet("facsimileTelephoneNumber")[0];
}
set
{
ExtensionSet("facsimileTelephoneNumber", value);
}
}
如何使用ExtensionSet清除属性?如果我输入null或空字符串,我几乎总是会收到这样的错误消息:“为目录服务指定的属性语法无效。”。听起来您应该清除属性,但我不确定这如何与ExtensionSet一起工作。问题是我没有发回数组,我只是发回值,而不是数组:
[DirectoryProperty("facsimileTelephoneNumber")]
public string FaxNumber
{
get
{
if (ExtensionGet("facsimileTelephoneNumber").Length != 1)
return null;
return (string)ExtensionGet("facsimileTelephoneNumber")[0];
}
set
{
ExtensionSet("facsimileTelephoneNumber", string.IsNullOrEmpty(value) ? new string[1] {null} : new string[1] {value});
}
}