すべてのサイトのパブリックURLを取得しようとしています。私はすべてのログイン名に対してこのコードを実行し、1人のユーザーを除いて正常に機能しています。このユーザーの場合、up.PersonalSiteでnullが発生します。手動で確認しましたが、そのユーザーのmysiteが存在します。up.personalsiteがnullを返す理由についてのアイデア。助言がありますか?
SPServiceContext context = SPServiceContext.GetContext(Site);
UP.UserProfileManager upm = new UP.UserProfileManager(context);
UP.UserProfile up = upm.GetUserProfile(LoginName);
if (up.PersonalSite == null)
return "#";
else
return up.PublicUrl.OriginalString;