如果没有提供 name 参数,使用的 LDAP 服务器是运行您的应用程序的计算机(IIS 服务器)也加入的服务器。就如此容易。
您可以随时获取域名
Environment.GetUserDomainName
为了实现连接域可能与默认域不同的场景,我将创建一个 Appsetting,为简单起见,我们将其称为 Domain,然后使用该设置的值(如果找到)连接到正确的 LDAP 服务器。
如果该值为空或不可用,则可以使用 Environment.GetUserDomainName 提供的默认域名。
using Context as new PrincipalContext(ContextType.Domain,GetDomainName())
'Do something
End Using
这是检查 Domain 应用设置是否存在并在找到时使用它的 GetDomainName() 函数。
Public Function GetDomainName() As String
Try
Dim ConfigDomain As String = ConfigurationManager.AppSettings("Domain")
If Not String.IsNullOrWhiteSpace(ConfigDomain) Then
Return ConfigDomain
Else
Return Environment.UserDomainName
End If
Catch ex As Exception
Return Environment.UserDomainName
End Try
End Function