主要上下文错误 服务器名称不能包含空格字符

问题描述 投票:1回答:1

我有一个asp页面的问题,当我在VS上运行本地的时候,这个页面是正常的,但是在服务器上就不行了,是在IIS 7.0上作为Application,这个页面显示了这个错误。

说明:在IIS 7.0中以Application的形式运行时,页面显示这样的错误:描述:在运行过程中发生一个未处理的异常。在执行当前Web请求时发生了一个未处理的异常。请查看堆栈跟踪以了解更多关于该错误的信息以及它在代码中的起源。

异常详情。System.ArgumentException: 服务器名称不能包含空格字符。

错误来源:System.ArgumentException: Server names cannot contain a space character:

第96行://Load Ad Info: //Load Ad Info

第97行。 PrincipalContext ctx = new PrincipalContext(ContextType.Domain, domain,container);

第98行:UserPrincipal user = UserPrincipal.FindByIdentity(ctx, userName);。 UserPrincipal user = UserPrincipal.FindByIdentity(ctx, userName);

代码很好,按照。

    //Load Ad User
    string[] temp = Convert.ToString(WindowsIdentity.GetCurrent().Name).Split('\\');
    string domainuserName = temp[0] + "\\" + temp[1];
    string userName = temp[1];
    string domain = temp[0];
    lblUserAD.Text = Convert.ToString(userName).ToUpper();
    string container = @"DC=america,DC=ad,DC=flex,DC=com";


    ////Load Ad Info
    PrincipalContext ctx = new PrincipalContext(ContextType.Domain, domain,container);
    UserPrincipal user = UserPrincipal.FindByIdentity(ctx, userName);

    DirectoryEntry directoryEntry = user.GetUnderlyingObject() as DirectoryEntry;
c# asp.net iis-7
1个回答
0
投票

对我来说,在将Application pool的标识从 "Application pool "改为 "Application pool "后,这个问题就解决了。ApplicationPoolIdenity本地系统

© www.soinside.com 2019 - 2024. All rights reserved.