2017-12-29 21 views
1

다음과 같이 고민하고 있습니다. 현재이 문제가 현재 해결 중입니다. 안전하지 않은 DirectoryServices.AccountManagement.PrincipalContext 사이를 전환합니다.

public PrincipalContext getPrincipalContext(bool secured) 
{ 
    PrincipalContext oPrincipalContext = new PrincipalContext(ContextType.Domain, 
     secured ? DomainName + ":636" : DomainName, 
     Container, 
     secured ? ContextOptions.SecureSocketLayer | ContextOptions.Negotiate : ContextOptions.SimpleBind, 
     userName, 
     password); 
    return oPrincipalContext; 
} 

내가이 가능하지만 컴파일 얻을 수없는 생각이

secured ? PrincipalContext oPrincipalContext = new PrincipalContext(ContextType.Domain, 
      DomainName + ":636", 
      Container, 
      ContextOptions.SecureSocketLayer | ContextOptions.Negotiate 
      userName, 
      password); 
     : 
      PrincipalContext oPrincipalContext = new PrincipalContext(ContextType.Domain, 
      DomainName, 
      Container, 
      ContextOptions.SimpleBind); 
    return oPrincipalContext; 

처럼 뭔가를 할 수 있습니다. 누군가 올바른 방법으로 나를 도울 수 있습니까?

답변

0

이 될 수있다

PrincipalContext oPrincipalContext = secured ? 
     new PrincipalContext(ContextType.Domain, 
      DomainName + ":636", 
      Container, 
      ContextOptions.SecureSocketLayer | ContextOptions.Negotiate 
      userName, 
      password); 
     : 
      new PrincipalContext(ContextType.Domain, 
      DomainName, 
      Container, 
      ContextOptions.SimpleBind); 

또는 왜 그냥 내가 찾던 정확히 즉 if, else

+0

를 사용하지 않는를 –