C# 更新已使用自定义属性扩展的AD UserPrincipal

C# 更新已使用自定义属性扩展的AD UserPrincipal,c#,active-directory,C#,Active Directory,我又被广告缠住了。有谁能告诉我如何更新使用[DirectoryProperty(“Title”)]样式属性扩展的UserPrincipal(C#)的示例的方向吗 我可以很好地创建用户,但是当我检索到他时,他又是一个UserPrincipal,而不是我的扩展类。我尝试过这样构造扩展类 ADUserClassExtensions userExt = new ADUserClassExtensions(ctx, userOfInterest.SamAccountName, "******", true

我又被广告缠住了。有谁能告诉我如何更新使用[DirectoryProperty(“Title”)]样式属性扩展的UserPrincipal(C#)的示例的方向吗

我可以很好地创建用户,但是当我检索到他时,他又是一个UserPrincipal,而不是我的扩展类。我尝试过这样构造扩展类

ADUserClassExtensions userExt = new ADUserClassExtensions(ctx, userOfInterest.SamAccountName, "******", true);
希望它能让我设置属性,然后保存它。但它(正确地)抱怨用户已经存在,因为我正在执行Save(),并且在那里看不到Update()方法

推荐的方法是什么?谷歌搜索了一下,什么也找不到


非常感谢

这是一个通过使用扩展性调用实现此目的的示例。

这是一个通过使用扩展性调用实现此目的的示例。

在扩展类中:

public static new ADUserClassExtensions GetPrincipalByIdentity(PrincipalContext ctx, string identityValue) 
{
    return (ADUserClassExtensions) Principal.FindByIdentityWithType(ctx, typeof(ADUserClassExtensions), identityValue);  
} 

在扩展类中:

public static new ADUserClassExtensions GetPrincipalByIdentity(PrincipalContext ctx, string identityValue) 
{
    return (ADUserClassExtensions) Principal.FindByIdentityWithType(ctx, typeof(ADUserClassExtensions), identityValue);  
} 

嗨,谢谢。实际上,我用另一种方法解决了这个问题,方法是在我的扩展类中重写FindByIdentity方法(这指定了要退休的对象的类型),如下所述。谢谢,你好,谢谢。实际上,我用另一种方法解决了这个问题,方法是在我的扩展类中重写FindByIdentity方法(这指定了要退休的对象的类型),如下所述。谢谢