0

現在、Sharepoint 2010 管理 Web サービスを使用しており、特定のサイト コレクションを削除できないようにしたいと考えています。誰かがこれを実現する方法を知っていますか?

adminService.DeleteSite(SiteCollection_TO_NEVER_DELETE);

削除されることはありませんか?

提案をありがとう

4

1 に答える 1

0

私の理解が正しければ、SharePoint 機能を使用してそれを行うことができます。

Web イベント レシーバーを持つ SharePoint フィーチャーを作成して展開できます。このイベント レシーバーでは、パラメーターSiteDeletingのプロパティの値を に変更することで、メソッドをオーバーライドし、サイト コレクションを削除する要求をキャンセルできます。これにより、サイト コレクションを削除しようとするとエラーが返されます。エラーメッセージを追加することもできます。Canceltrue

例えば:

    /// <summary>
    /// A site collection is being deleted
    /// </summary>
    public override void SiteDeleting(SPWebEventProperties properties)
    {
        base.SiteDeleting(properties);
        if(/*some condition*/)
        { 
            properties.Cancel = true;
            properties.ErrorMessage = "This site collection should never be deleted.";
        }
     }

特定の名前または特定の URL を確認できます。

もちろん、機能を無効にしてサイトを削除することは可能です。ただし、少なくとも、誤って削除されるのを防ぐことができます。

于 2013-09-23T20:38:18.267 に答える