2012-01-16 8 views
2

私はActive Directoryを自分のUser Profile Serviceに接続し、ADからカスタムプロパティ(employeeNumber)を追加しました。私は完全にユーザープロファイルサービスを同期した後、私はすべてのemployeeNumberプロパティ値をセントラル管理者から正しく読み取ることができ、ユーザープロファイルのプロパティ数は管理パネルで69です。User Profile Service - カスタムプロパティ - プロパティが見つかりません

しかし、私は私のSharePointアプリケーションからemployeeNumberがデータを読み取るしようとすると、それは例外「プロパティが見つかりません」、およびユーザー・プロファイル・マネージャーのプロパティ数を投げ、私はすでに設定している68

です私のカスタムプロパティのプライバシー設定を "Everyone"にして、私のコードで正しい内部カスタムプロパティ名を使用していることを確かめてください。

提案がありますか?その理由の

  SPServiceContext serverContext = SPServiceContext.GetContext(SPContext.Current.Site); 
      UserProfileManager profileManager = new UserProfileManager(serverContext); 
      UserProfile user = profileManager.GetUserProfile(System.Web.HttpContext.Current.User.Identity.Name); 

      int count = profileManager.Properties.Count; // Count = 68 [custom prop is not included] 
      string department = user["Department"].Value.ToString(); // Works fine 
      string employeeNumber = user["employeeNumber"].Value.ToString(); // Property Not Found 
+0

UserProfileユーザーコレクションを繰り返し、すべてのプロパティ名 –

答えて

1

一つは、あなたが複数のユーザープロファイルサービスアプリケーションを作成していることかもしれないし、Webアプリケーション(あなたがのために上記のコードをしようとしている)を使用している:ここでは

は私のコードサンプルですカスタムプロパティを追加したアプリケーションインスタンス以外のサービスアプリケーションインスタンス

関連する問題