Effectuer une conversion entre les types de système de projet SharePoint et d’autres types de projet Visual StudioConvert between SharePoint project system types and other Visual Studio project types

Dans certains cas, vous pouvez avoir un objet dans le système de projet SharePoint et que vous souhaitez utiliser les fonctionnalités d’un objet correspondant dans le modèle objet automation Visual Studio ou le modèle objet d’intégration, ou vice versa.In some cases you might have an object in the SharePoint project system and you want to use features of a corresponding object in the Visual Studio automation object model or integration object model, or vice versa. Dans ce cas, vous pouvez utiliser la Convert méthode du service de projet SharePoint pour convertir l’objet d’un modèle d’objet différent.In these cases, you can use the Convert method of the SharePoint project service to convert the object to a different object model.

Par exemple, vous pouvez avoir un ISharePointProject objet, mais que vous souhaitez utiliser des méthodes qui sont disponibles uniquement sur un Project ou IVsProject objet.For example, you might have an ISharePointProject object, but you want to use methods that are only available on an Project or IVsProject object. Dans ce cas, vous pouvez utiliser la Convert méthode pour convertir le ISharePointProject à un Project ou IVsProject.In this case, you can use the Convert method to convert the ISharePointProject to an Project or IVsProject.

Pour plus d’informations sur le modèle d’objet automation Visual Studio et le modèle objet d’intégration Visual Studio, consultez extensions d’outils de la vue d’ensemble du modèle de programmation de SharePoint.For more information about the Visual Studio automation object model and the Visual Studio integration object model, see Overview of the programming model of SharePoint tools extensions.

Types de conversionsTypes of conversions

Le tableau suivant répertorie les types de cette méthode peut convertir entre le système de projet SharePoint et les autres modèles d’objet Visual Studio.The following table lists the types that this method can convert between the SharePoint project system and the other Visual Studio object models.

Type de système de projet SharePointSharePoint project system type Types correspondants dans les modèles d’objet automation et intégrationCorresponding types in the automation and integration object models
ISharePointProject Project

ouor

N’importe quelle interface dans le modèle objet d’intégration Visual Studio qui est implémenté par l’objet COM sous-jacent pour le projet.Any interface in the Visual Studio integration object model that is implemented by the underlying COM object for the project. Ces interfaces comprennent IVsHierarchy, IVsProject (ou une interface dérivée), et IVsBuildPropertyStorage.These interfaces include IVsHierarchy, IVsProject (or a derived interface), and IVsBuildPropertyStorage. Pour obtenir la liste des interfaces principales qui sont implémentées par les projets, consultez composants principaux du modèle de projet.For a list of the main interfaces that are implemented by projects, see Project Model Core Components.
IMappedFolder

ISharePointProjectItem

ISharePointProjectItemFile

ISharePointProjectFeature

ISharePointProjectFeatureResourceFile

ISharePointProjectPackage
ProjectItem

ouor

UnUInt32 (également appelée un VSITEMID) de la valeur qui identifie le membre de projet dans le IVsHierarchy qui le contient.AUInt32 value (also called a VSITEMID) that identifies the project member in the IVsHierarchy that contains it. Cette valeur peut être passée à la itemid paramètre de certaines IVsHierarchy méthodes.This value can be passed to the itemid parameter of some IVsHierarchy methods.

ExempleExample

L’exemple de code suivant montre comment utiliser le Convert méthode pour convertir un ISharePointProject de l’objet à un Project.The following code example demonstrates how to use the Convert method to convert an ISharePointProject object to an Project.

void projectService_ProjectAdded(object sender, Microsoft.VisualStudio.SharePoint.SharePointProjectEventArgs e)
{
    EnvDTE.Project dteProject = e.Project.ProjectService.Convert<
        Microsoft.VisualStudio.SharePoint.ISharePointProject, EnvDTE.Project>(e.Project);

    if (dteProject != null)
    {
        // Use the Visual Studio automation object model to add a folder to the project.
        dteProject.ProjectItems.AddFolder("Data");
    }
}
Private Sub projectService_ProjectAdded(ByVal sender As Object, _
    ByVal e As Microsoft.VisualStudio.SharePoint.SharePointProjectEventArgs)

    Dim dteProject As EnvDTE.Project = e.Project.ProjectService.Convert( _
        Of Microsoft.VisualStudio.SharePoint.ISharePointProject, EnvDTE.Project)(e.Project)
    If dteProject IsNot Nothing Then
        ' Use the Visual Studio automation object model to add a folder to the project.
        dteProject.ProjectItems.AddFolder("Data")
    End If
End Sub

Cet exemple nécessite :This example requires:

Voir aussiSee also