0

イベント ハンドラーの SharePoint ページ ライブラリで、ページの現在のマイナー バージョンを削除したいと考えています。

現在のバージョンが 3.15 で、このバージョンを削除したいとします。エラーをスローして item.File.Versions.DeleteByLabel を使用しています。

4

1 に答える 1

0

特定のエラーを知らなくても、 SPFileVersion.IsCurrentVersionが trueであるバージョンを削除するには、古いバージョンを復元する必要があると思います。

編集:

あなたのコメントは私が疑ったことを裏付けています。現在のバージョンを削除することはできません。さらに調べてみると、現在のバージョンが SPFileVersionCollection に存在しない可能性さえあるようです。2 番目のコメントのコードは、何のアクションも起こさない可能性があります。これを確認するには、次のことを試してください。

if (null == item.File.Versions.GetVersionFromLabel("3.15")) {
    // current version isn't contained in SPFileVersionCollection
}

あなたの問題についてさらに考えてみると、本当に現在のバージョンを削除したいですか、それとも以前のバージョンにロールバックしたいですか? 後者の場合、代わりにSPFile.UndoCheckOutを使用できますか?

于 2012-10-22T16:17:50.117 に答える