Partilhar via


Método IVsAddWebReferenceDlg3.ShowAddWebReferenceDialog

Exibe o Add Service Reference caixa de diálogo.

Namespace:  Microsoft.VisualStudio.WCFReference.Interop
Assembly:  Microsoft.VisualStudio.WCFReference.Interop (em Microsoft.VisualStudio.WCFReference.Interop.dll)

Sintaxe

'Declaração
Sub ShowAddWebReferenceDialog ( _
    pProject As IVsHierarchy, _
    pDiscoverySession As IDiscoverySession, _
    referenceTypesAllowed As ServiceReferenceType, _
    pszDialogName As String, _
    pExistingReferenceGroup As IVsWCFReferenceGroup, _
    pszReferenceConfigContents As String, _
    <OutAttribute> ByRef ppReferenceResult As IVsAddWebReferenceResult, _
    <OutAttribute> ByRef pfCancelled As Integer _
)
void ShowAddWebReferenceDialog(
    IVsHierarchy pProject,
    IDiscoverySession pDiscoverySession,
    ServiceReferenceType referenceTypesAllowed,
    string pszDialogName,
    IVsWCFReferenceGroup pExistingReferenceGroup,
    string pszReferenceConfigContents,
    out IVsAddWebReferenceResult ppReferenceResult,
    out int pfCancelled
)
void ShowAddWebReferenceDialog(
    [InAttribute] IVsHierarchy^ pProject, 
    [InAttribute] IDiscoverySession^ pDiscoverySession, 
    [InAttribute] ServiceReferenceType referenceTypesAllowed, 
    [InAttribute] String^ pszDialogName, 
    [InAttribute] IVsWCFReferenceGroup^ pExistingReferenceGroup, 
    [InAttribute] String^ pszReferenceConfigContents, 
    [OutAttribute] IVsAddWebReferenceResult^% ppReferenceResult, 
    [OutAttribute] int% pfCancelled
)
abstract ShowAddWebReferenceDialog : 
        pProject:IVsHierarchy * 
        pDiscoverySession:IDiscoverySession * 
        referenceTypesAllowed:ServiceReferenceType * 
        pszDialogName:string * 
        pExistingReferenceGroup:IVsWCFReferenceGroup * 
        pszReferenceConfigContents:string * 
        ppReferenceResult:IVsAddWebReferenceResult byref * 
        pfCancelled:int byref -> unit
function ShowAddWebReferenceDialog(
    pProject : IVsHierarchy, 
    pDiscoverySession : IDiscoverySession, 
    referenceTypesAllowed : ServiceReferenceType, 
    pszDialogName : String, 
    pExistingReferenceGroup : IVsWCFReferenceGroup, 
    pszReferenceConfigContents : String, 
    ppReferenceResult : IVsAddWebReferenceResult, 
    pfCancelled : int
)

Parâmetros

  • pProject
    Tipo: IVsHierarchy

    O IVsHierarchy para o projeto onde a referência será adicionada.

  • pDiscoverySession
    Tipo: IDiscoverySession

    O IVsDiscoveryService sessão a ser usado para o download de metadados.

  • pszDialogName
    Tipo: String

    A String que contém o título da caixa de diálogo. Can be Null.

  • pszReferenceConfigContents
    Tipo: String

    A String que contém o conteúdo de configuração.

  • pfCancelled
    Tipo: Int32%

    Um Integer especificando se a caixa de diálogo foi cancelada.

Comentários

O Add Service Reference caixa de diálogo permite que um usuário especificar um endereço de download de metadados, baixa os metadados do serviço e exibe informações sobre o serviço.

Se o download de metadados de serviço tiver êxito e o usuário fecha a caixa de diálogo, clicando em OK, o consumidor do serviço (por exemplo, o sistema de projeto) deve chamar o Save método do retornado IVsAddWebReferenceResult objeto. Isso faz com que uma nova referência do WCF a ser adicionado ao projeto e o proxy do serviço a ser gerado. O IVsAddWebReferenceResult objeto também pode ser armazenados em cache e usado para criar uma referência de serviço mais tarde.

ShowAddWebReferenceDialogfalhar imediatamente se o projeto não suporta o serviço de armazenamento, ou VSPROPID_ServiceReferenceSupported a propriedade do projeto não é verdadeira.

Exemplos

O exemplo a seguir demonstra como exibir o Add Service Reference caixa de diálogo.

/// Add a service reference to the given project. 
private static IVsWCFReferenceGroup TryAddServiceReference
 (IVsHierarchy hierarchy, IServiceProvider serviceProvider,
 IDiscoverySession discoverySession)
{
    Debug.Assert(serviceProvider != null, "Why are we passing in a NULL
 service provider to a private method?");

    IVsAddWebReferenceDlg3 awrdlg = 
 serviceProvider.GetService(typeof(SVsAddWebReferenceDlg3))
 as IVsAddWebReferenceDlg3;
    IVsAddWebReferenceResult addWebReferenceResult = null;
    int cancelled = 1;

    if (awrdlg != null && hierarchy != null)
    {
        awrdlg.ShowAddWebReferenceDialog( 
            hierarchy, 
            discoverySession, 
            ServiceReferenceType.SRT_WCFReference, 
            null, 
            null, 
            null, 
            out addWebReferenceResult, 
            out cancelled);
    }

    if (addWebReferenceResult != null && cancelled == 0)
    {
        return addWebReferenceResult.Save() as IVsWCFReferenceGroup;
    }
    else
    {
         return null;
    }
}

Segurança do .NET Framework

Consulte também

Referência

IVsAddWebReferenceDlg3 Interface

Namespace Microsoft.VisualStudio.WCFReference.Interop