0

カスタム ユーザー プロファイル プロパティの更新で問題が発生しました。同じ問題を抱えている人、以下のコード:

[void][reflection.assembly]::Loadwithpartialname("Microsoft.Office.Server");            
$site=new-object Microsoft.SharePoint.SPSite("$ProfilFullURL");            
$serviceContext = Get-SPServiceContext $site;            
$site.Dispose();            
$upm = new-object Microsoft.Office.Server.UserProfiles.UserProfileManager($serviceContext);

function Update-UserProfileProperty ($property, $excelProperty)
{
Write-Host "Setting property $property : " -NoNewline
Try
{       
    $userProfile["$property"].Value = $excelProperty;            
    $userProfile.Commit()
    Write-Host "$excelProperty" -ForegroundColor Green
}
Catch [system.exception]
{
    Write-Host "Error" -ForegroundColor Red
}
}

私がやろうとしているのは、移行データを Excel スプレッドシートからカスタム ユーザー プロファイル プロパティに追加することです。ユーザーとプロパティが存在します!

このコードは、FirstName などの標準プロパティで動作します。

4

1 に答える 1

1

飛び出す項目の 1 つは、コードが SPSite オブジェクトを利用する機会を得る前に、SPSite オブジェクトを破棄していることです。移動 ' $site.Dispose(); ' コード ブロックの末尾に追加します。

于 2015-02-18T21:28:20.177 に答える