0

我正在尝试获取我所有网站的公共 URL。我已经为每个登录名运行了此代码,并且除了一个用户之外,它的工作正常。对于这个用户,我在 up.PersonalSite 中得到了空值。我已经手动检查过,并且该用户的 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;
4

1 回答 1

0

也许,您看到了现有用户的个人资料页面?(http://localhost/my/Person.aspx?accountname=DOMAIN%5CVPupkin) 用户应该自己创建您的站点,或者您可以通过编程方式创建

SPServiceContext context = SPServiceContext.GetContext(Site);
UP.UserProfileManager upm = new UP.UserProfileManager(context);
UP.UserProfile up = upm.GetUserProfile(LoginName);
up.CreatePersonalSite();
于 2012-08-06T09:08:33.883 回答