gpt4 book ai didi

C# PrincipalContext 错误 "Server names cannot contain a space character"

转载 作者:行者123 更新时间:2023-11-30 15:26:53 29 4
gpt4 key购买 nike

我收到以下错误

使用PrincipalContext获取域用户信息时'服务器名不能包含空格'

此代码在我的机器上本地运行,但当我将它加载到 Intranet Web 服务器上时出现错误。

            //GET CURRENT USER 
String winUser = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
string[] domainUsername = winUser.Split(Convert.ToChar(@"\"));

// set up domain context
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, domainUsername[0]);

// find a user
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, domainUsername[1]);

return user;

最佳答案

对我来说,这是因为 PrincipalContext 的以下设置。

并且在将应用程序池的标识从 ApplicationPoolIdenity 更改为 LocalSystem 后解决了这个问题。

这不是真正的解决方案,但可能对某些人有所帮助。

PrincipalContext pc = new PrincipalContext((Environment.UserDomainName == Environment.MachineName ?
ContextType.Machine : ContextType.Domain), Environment.UserDomainName);

关于C# PrincipalContext 错误 "Server names cannot contain a space character",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28406731/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com