Procédure : Utiliser l'étendue de gestion des exceptions
Dernière modification : mardi 9 février 2010
S’applique à : SharePoint Foundation 2010
Disponible dans SharePoint Online
L'exemple suivant montre comment implémenter l'étendue de la gestion des exceptions à l'aide de la classe ExceptionHandlingScope (JavaScript: ExceptionHandlingScope), et de ses méthodes StartTry(), StartCatch() et StartFinally() methods (in JavaScript, startTry(), startCatch() et startFinally()).
L'exemple tente de retourner une liste contenant un titre spécifié et, si la liste existe, modifie sa description puis active la création de dossiers. Si la liste n'existe pas, l'exemple crée la liste puis active la création de dossiers.
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
Voir aussi
Concepts
Procédure : Utilisation de l'étendue conditionnelle
Tâches courantes de programmation