Share via


VSProject2.AddWebReference (Método)

Agrega al proyecto una referencia a un servicio Web. Se agrega una nueva subcarpeta con una referencia a un servicio Web a la carpeta Referencias web del proyecto. Esta nueva carpeta contiene otros elementos de proyecto relacionados con el servicio Web. El método devuelve el objeto ProjectItem asociado a la nueva carpeta de servicio Web.

Espacio de nombres:  VSLangProj80
Ensamblado:  VSLangProj80 (en VSLangProj80.dll)

Sintaxis

'Declaración
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

Parámetros

  • bstrUrl
    Tipo: String

    Obligatorio. Normalmente, se trata de una dirección URL de archivo con extensión .disco o .vsdisco.

Valor devuelto

Tipo: ProjectItem
Devuelve un objeto ProjectItem que es la nueva carpeta Referencias web.

Comentarios

Si WebReferencesFolder es Nothing (una referencia nullreferencia null (Nothing en Visual Basic)), se crea un ProjectItem para la carpeta Referencias Web para el proyecto y se establece la propiedad WebReferencesFolder.

Cuando se crea una referencia Web a un servicio Web, se agrega un nuevo tipo de carpeta, ProjectItem, a la colección ProjectItems del proyecto. Este nuevo objeto ProjectItem contiene, en su propiedad ProjectItems, los elementos individuales que componen una especificación de referencia Web. Los cuatro tipos de elementos incluidos en una especificación de referencia Web se describen en la tabla siguiente.

Elemento

Objetivo

Archivo de asignación (Reference.map)

Este archivo XML asigna las direcciones URL a la ubicación local de archivos almacenados en caché. Enumera el archivo de descubrimiento y los archivos de contrato de servicios del servicio Web.

Archivos de Contrato de servicios (.wsdl)

Estos archivos SOAP especifican la interfaz del servicio Web. Puede haber más de un archivo de contrato en la carpeta Web Reference.

Archivos de definición de esquema XML (.xsd)

Estos archivos contienen definiciones de esquemas XML para el servicio Web. Puede haber más de un archivo de esquema en la carpeta Web Reference.

Archivo de descubrimiento (.disco o .vsdisco)

Este archivo XML contiene vínculos a otros recursos que describen el servicio Web.

Ejemplos

En este ejemplo se agrega un servicio Web a un proyecto de Visual Basic o Visual C#. Antes de ejecutar este ejemplo, reemplace el parámetro bstrUrl: https://ServerName/Application/myServiceName.asmx, por una dirección URL real. Para ejecutar este ejemplo como complemento, vea Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización.

[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());
}

Seguridad de .NET Framework

Vea también

Referencia

VSProject2 Interfaz

VSLangProj80 (Espacio de nombres)