2014-01-10 4 views
0

사용자를 추가하는 동안 사용자를 추가하려고하는데이 오류가 발생합니다. "제약 제한이 발생했습니다" 최근에 작성한 OU가 CN 작성자입니다.제한 사항 Voilation이 발생했습니다.

public static void CreateNewUser(string clientUpnSuffix, NewUserModel user) 
    { 
     if (!(Settings.IsLive)) 
     { 
      return; 
     } 

     var clientDE = GetClientAccount(clientUpnSuffix).DirectoryEntry; 
     var usersOUDE = clientDE.Children.Find("OU=Users"); 
     var userDE = usersOUDE.Children.Add("CN=" + user.UserName, "user"); 
     userDE.Properties[ADAttribute.USERPRINCIPALNAME].Value = string.Format("{0}@{1}", user.UserName, clientUpnSuffix); 
     userDE.Properties[ADAttribute.SAMACCOUNTNAME].Value = user.UserName; 

     userDE.Properties[ADAttribute.TELEPHONE].Value = user.Telephone; 
     userDE.Properties[ADAttribute.OFFICE].Value = user.Department; 
     userDE.Properties[ADAttribute.GIVENNAME].Value = user.FirstName; 
     userDE.Properties[ADAttribute.SN].Value = user.LastName; 

     userDE.Properties[ADAttribute.DISPLAYNAME].Value = string.Format("{0} {1}", user.FirstName, user.LastName); 

     if (user.CreateMSExchangeAccount) 
     { 
      userDE.Properties[ADAttribute.MAIL].Value = string.Format("{0}@{1}", user.UserName, clientUpnSuffix); 
     } 
     else 
     { 
      userDE.Properties[ADAttribute.MAIL].Value = null; 
     } 

     //userDE.Invoke("SetPassword", new object[] { user.Password }); 

     userDE.CommitChanges(); 
     usersOUDE.Close(); 
     userDE.Close(); 
    } 

답변

0

existing attributes을 사용해야하며 꿈꾸는 것이 아닙니다. 내가 생각한 '전화'는 telephoneNumber이고 '사무실'은 department 일 수 있습니다. 이것은 제약 voilation의 시작점이어야합니다.