Freigeben über


Gewusst wie: Verwenden des Ausnahmebehandlungsbereichs

Letzte Änderung: Dienstag, 9. Februar 2010

Gilt für: SharePoint Foundation 2010

Verfügbar in SharePoint Online

Im folgenden Beispiel wird gezeigt, wie der Ausnahmebehandlungsbereich durch die ExceptionHandlingScope-Klasse (JavaScript: ExceptionHandlingScope) und deren Methoden StartTry(), StartCatch() und StartFinally() (in JavaScript, startTry(), startCatch() und startFinally()) implementiert wird.

Im Beispiel wird versucht, eine Liste mit einem angegebenen Titel zurückzugeben. Wenn die Liste vorhanden ist, wird die Beschreibung geändert, und anschließend wird die Ordnererstellung aktiviert. Wenn die Liste nicht vorhanden ist, wird die Liste erstellt und dann die Ordnererstellung aktiviert.

using System;
using Microsoft.SharePoint.Client;
namespace Microsoft.SDK.SharePointServices.Samples
{
    class ExampleExceptionHandlingScope
    {        
        // Update the description of specified list and also 
        // enable folder creation.  There's a possibility that the specified 
        // list does not exist.
        static void Main()
        {
            ClientContext clientContext = new ClientContext("http://MyServer/sites/MySiteCollection");            

            ExceptionHandlingScope scope = new ExceptionHandlingScope(clientContext);            

            using (scope.StartScope())
            {
                using (scope.StartTry())
                {
                    List oList = clientContext.Web.Lists.GetByTitle("My List");
                    oList.Description = "In Try Block";
                    oList.Update();
                }

                using (scope.StartCatch())
                {                    
                    // Assume that if there's an exception, it can only be 
                    // because there is no list with the specified title, so
                    // create the list.
                    ListCreationInformation listCreateInfo = new ListCreationInformation();
                    listCreateInfo.Title = "My List";
                    listCreateInfo.Description = "In Catch Block";
                    listCreateInfo.TemplateType = (int)ListTemplateType.Announcements;
                    List oList = clientContext.Web.Lists.Add(listCreateInfo);                    
                }

                using (scope.StartFinally())
                {                    
                    List oList = clientContext.Web.Lists.GetByTitle("My List");
                    oList.EnableFolderCreation = true;
                    oList.Update();                     
                }
            }

            clientContext.ExecuteQuery();            
        }
    }
}
Imports System
Imports Microsoft.SharePoint.Client

Namespace Microsoft.SDK.SharePointServices.Samples

    Class ExampleExceptionHandlingScope

       ' Update the description of specified list and also 
       ' enable folder creation.  There's a possibility that the specified 
       ' list does not exist.
        Shared Sub Main()

            Dim clientContext As New ClientContext("http://MyServer/sites/MySiteCollection")

            Dim scope As New ExceptionHandlingScope(clientContext)

            Using scope.StartScope()

                Using scope.StartTry()

                    Dim oList As List = clientContext.Web.Lists.GetByTitle("My List")
                    oList.Description = "In Try Block"
                    oList.Update()

                End Using

                Using scope.StartCatch()

                   ' Assume that if there's an exception, it can only be 
                   ' because there is no list with the specified title, so
                   ' create the list.
                    Dim listCreateInfo As New ListCreationInformation()
                    listCreateInfo.Title = "My List"
                    listCreateInfo.Description = "In Catch Block"
                    listCreateInfo.TemplateType = CInt(ListTemplateType.Announcements)
                    Dim oList As List = clientContext.Web.Lists.Add(listCreateInfo)

                End Using

                Using scope.StartFinally()

                    Dim oList As List = clientContext.Web.Lists.GetByTitle("My List")
                    oList.EnableFolderCreation = True
                    oList.Update()

                End Using
            End Using

            clientContext.ExecuteQuery()

        End Sub
    End Class
End Namespace

Siehe auch

Konzepte

Gewusst wie: Verwenden des bedingten Bereichs

Allgemeine Programmieraufgaben

Weitere Ressourcen

Clientklassenbibliothek

ECMAScript-Klassenbibliothek