VS2010 を介してそれらを参照するいくつかのサイト列とコンテンツ タイプを作成しました。フィールドの 1 つを更新してから再デプロイしようとしましたが、撤回した後、以前に作成したサイト列がまだそこにあったため、デプロイに失敗しました。UI から手動で削除しようとしたところ、次のメッセージが表示されたアラート ボックスが表示されました。
コンテンツ タイプに含まれるサイト列は削除できません。削除する前に、このサイト列へのすべての参照を削除してください。
SharePoint Manager を調べてみましたが、参照が見つからなかったので、powershell を使用してすべてのコンテンツ タイプとリストを列挙し、サイト列への参照を探しましたが、何も見つかりませんでした。
次のようにPowerShellを使用して削除しようとしました:
$web.Fields.Delete("StartTime")
このエラーが発生しました:
Exception calling "Delete" with "1" argument(s): "Site columns which are included in
content types or on lists cannot be deleted. Please remove all instances of this site
column prior to deleting it."
At line:1 char:19
+ $web.Fields.Delete <<<< ("StartTime")
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : DotNetMethodException
最後に、PowerShell の列を簡単に調べると、次のことがわかります。
Title Id CanBeDeleted ParentList Sealed ListsFieldUsedIn
----- -- ------------ ---------- ------ ----------------
Start Time OBE 6fa0d85b-9af1-408b-835f-d4c66536... True False {}
Time Tracker Tags 92bc866b-0415-45f0-b431-d4df69c4... True False {}
私は MOSS 2007 の経験があり、SP2010 は初めてですが、これが起こるのを見たことはありません。誰にもヒントはありますか?