Partager via


VSProject2.AddWebReference, méthode

Ajoute au projet une référence à un service Web. Un nouveau sous-dossier de référence à un service Web est ajouté au dossier Web References du projet. Ce nouveau dossier contient plusieurs autres éléments de projet relatifs au service Web. La méthode retourne l'objet ProjectItem associé au nouveau dossier de service Web.

Espace de noms :  VSLangProj80
Assembly :  VSLangProj80 (dans VSLangProj80.dll)

Syntaxe

'Déclaration
Function AddWebReference ( _
    bstrUrl As String _
) As ProjectItem
ProjectItem AddWebReference(
    string bstrUrl
)
ProjectItem^ AddWebReference(
    [InAttribute] String^ bstrUrl
)
abstract AddWebReference : 
        bstrUrl:string -> ProjectItem
function AddWebReference(
    bstrUrl : String
) : ProjectItem

Paramètres

  • bstrUrl
    Type : String

    Obligatoire. En général, il s'agit d'une URL de nom de fichier dotée de l'extension .disco ou .vsdisco.

Valeur de retour

Type : ProjectItem
Retourne un objet ProjectItem qui est le nouveau dossier Web Reference.

Notes

Si WebReferencesFolder a la valeur Nothing (référence nullune référence null (Nothing en Visual Basic)), ProjectItem est créé pour le dossier Web References du projet et WebReferencesFolder est défini.

Lorsqu'une référence Web à un service Web est créée, un nouveau type de dossier, ProjectItem, est ajouté à la collection ProjectItems du projet. Le nouveau ProjectItem contient, dans sa propriété ProjectItems, les différents éléments constituant une spécification de référence Web. Les quatre types d'éléments inclus dans une spécification de référence Web sont décrits dans le tableau suivant.

Élément

Objectif

Fichier de mappage (Reference.map)

Ce fichier XML mappe les URL avec l'emplacement de fichier de cache local. Il répertorie le fichier de découverte et les fichiers de contrat de service pour le service Web.

Fichiers de contrat de service (.wsdl)

Ces fichiers SOAP spécifient l'interface du service Web. Le dossier Web Reference peut contenir plusieurs fichiers de contrat.

Fichiers de définition de schéma XML (.xsd)

Ces fichiers contiennent des définitions de schéma XML pour le service Web. Le dossier Web Reference peut contenir plusieurs fichiers de schéma.

Fichier de découverte (.disco ou .vsdisco)

Ce fichier XML contient des liens vers d'autres ressources qui décrivent le service Web.

Exemples

Cet exemple ajoute un service Web à un projet Visual Basic ou Visual C#. Avant d'exécuter cet exemple, remplacez le paramètre bstrUrl : https://ServerName/Application/myServiceName.asmx par une URL valide. Pour exécuter cet exemple comme un complément, consultez Comment : compiler et exécuter les exemples de code du modèle objet Automation.

[Visual Basic]

' Add-in code.
Imports VSLangProj
Imports VSLangProj80
Public Sub OnConnection(ByVal application As Object,_
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    applicationObject = CType(application, DTE2)
    addInInstance = CType(addInInst, AddIn)
    AddWebReferenceExample(applicationObject)
End Sub
Sub AddWebReferenceExample(ByVal dte As DTE2)
    ' This example assumes that the first project in the solution is 
    ' a Visual Basic or C# project.
    Dim aVSProject As VSProject2 = _
    CType(applicationObject.Solution.Projects.Item(1).Object, _
    VSProject2)
    ' The new project item is a folder.
    Dim newFolder As ProjectItem
    ' Replace the sample URL with an actual URL.
    newFolder = aVSProject.AddWebReference( _
    "https://ServerName/Application/myServiceName.asmx")
    ' The new name of the folder appears in Solution Explorer.
    newFolder.Name = "NewName"
    ' The ProjectItems collection for the folder is not empty.
    MsgBox(newFolder.ProjectItems.Count.ToString())
End Sub

[C#]

using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;

public void OnConnection(object application, ext_ConnectMode
 connectMode, object addInInst, ref Array custom)
{
    applicationObject = (DTE2)application;
    addInInstance = (AddIn)addInInst;
    AddWebReferenceExample((DTE2)applicationObject);
}

public void AddWebReferenceExample(DTE2 dte)
{
    // This example assumes that the first project in the solution is 
    // a Visual Basic or C# project.
    VSProject2 aVSProject =
 ((VSProject2)( applicationObject.Solution.Projects.Item(1).Object));
    // The new project item is a folder.
    ProjectItem newFolder = null;
    // Replace the sample URL with an actual URL.
    newFolder = aVSProject.AddWebReference
("https://ServerName/Application/myServiceName.asmx ");
    // The new name of the folder appears in Solution Explorer.
    newFolder.Name = "NewName";
    // The ProjectItems collection for the folder is not empty.
    MessageBox.Show("Number of items in the Web Reference folder: \n"
 + newFolder.ProjectItems.Count.ToString());
}

Sécurité .NET Framework

Voir aussi

Référence

VSProject2 Interface

VSLangProj80, espace de noms