C# 有没有办法在ResolveNames调用中获得精确匹配

C# 有没有办法在ResolveNames调用中获得精确匹配,c#,exchangewebservices,C#,Exchangewebservices,我试图通过esb.ResolveNamesusername函数查找用户的电子邮件id,但对于某些用户名,它会返回多个条目。有没有办法将其限制在精确匹配的范围内 例如,如果我想查找User1,那么得到的结果是[User1,User12,User123]。我只需要User1,很难说没有给出所有的细节。您可以尝试的一个技巧是在用户名前面使用=,因此类似于=User1。如果这与他们电子邮件地址的第一部分相对应,那么应该可以使用。我有这个问题。我最终使用System.DirectoryServices.A

我试图通过esb.ResolveNamesusername函数查找用户的电子邮件id,但对于某些用户名,它会返回多个条目。有没有办法将其限制在精确匹配的范围内


例如,如果我想查找User1,那么得到的结果是[User1,User12,User123]。我只需要User1,很难说没有给出所有的细节。您可以尝试的一个技巧是在用户名前面使用=,因此类似于=User1。如果这与他们电子邮件地址的第一部分相对应,那么应该可以使用。

我有这个问题。我最终使用System.DirectoryServices.AccountManagement来获取每个广告帐户的电子邮件:

PrincipalContext ctx = new PrincipalContext(ContextType.Domain);
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, adName);
return user.EmailAddress;

这对我不起作用。它返回与ResolveNames相同的结果,但没有=