Condividi tramite


Interfaccia IVsDataHostService

Fornisce il servizio host di DDEX.

Spazio dei nomi:  Microsoft.VisualStudio.Data.Core
Assembly:  Microsoft.VisualStudio.Data.Core (in Microsoft.VisualStudio.Data.Core.dll)

Sintassi

'Dichiarazione
<GuidAttribute("42B51AD0-12B8-409f-BB67-1A381CCAD02E")> _
Public Interface IVsDataHostService
[GuidAttribute("42B51AD0-12B8-409f-BB67-1A381CCAD02E")]
public interface IVsDataHostService
[GuidAttribute(L"42B51AD0-12B8-409f-BB67-1A381CCAD02E")]
public interface class IVsDataHostService
[<GuidAttribute("42B51AD0-12B8-409f-BB67-1A381CCAD02E")>]
type IVsDataHostService =  interface end
public interface IVsDataHostService

Il tipo IVsDataHostService espone i seguenti membri.

Proprietà

  Nome Descrizione
Proprietà pubblica UIThread Ottiene il processo principale del thread (interfaccia utente) nel processo di Visual Studio.

In alto

Metodi

  Nome Descrizione
Metodo pubblico BeginInvokeOnUIThread Esegue in modo asincrono un metodo specificato in esecuzione principale del thread (interfaccia utente) nel processo di Visual Studio, con l'elenco specificato di argomenti.
Metodo pubblico GetService<T>() Ottiene un servizio globale di Visual Studio del tipo specificato.
Metodo pubblico GetService<T>(Guid) Ottiene un servizio globale di Visual Studio che viene registrato con l'id di classe specificato che implementa l'interfaccia specificata.
Metodo pubblico GetService<TService, TInterface>() Ottiene un servizio globale di Visual Studio del tipo specificato che implementa l'interfaccia specificata.
Metodo pubblico InvokeOnUIThread In modo sincrono esegue un metodo specificato in esecuzione principale del thread nel processo di Visual Studio, con l'elenco specificato di argomenti.
Metodo pubblico TryGetService<T>() Tenta di ottenere un servizio globale di Visual Studio del tipo specificato.
Metodo pubblico TryGetService<T>(Guid) Tenta di ottenere un servizio globale di Visual Studio che viene registrato con l'id di classe specificato che implementa l'interfaccia specificata.
Metodo pubblico TryGetService<TService, TInterface>() Tenta di ottenere un servizio globale di Visual Studio del tipo specificato che implementa l'interfaccia specificata.

In alto

Note

Il servizio host di DDEX offre un modo per accedere ai servizi globali di Visual Studio con diversi metodi generici. Questo servizio è più semplice chiamare il metodo QueryService l'implementazione sottostante IServiceProvider nativi fornita dall'ambiente di Visual Studio. Questo servizio fornisce anche quel dei membri diventato importante quando si desidera effettuare le operazioni asincrone che sono sincrone al thread UI.

Il servizio host di DDEX è un servizio globale di Visual Studio registrato dall'ambiente ed è accessibile quindi richiedendo il servizio da un oggetto provider di servizi globale.

Esempi

Il codice seguente viene illustrato come un client può recuperare il servizio host di DDEX da un provider di servizi globale di Visual Studio e quindi recuperare un servizio aggiuntivo utilizzando uno dei metodi generici.

using System;
using System.Diagnostics;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Shell.Interop;

public class DdexHostSvcExample1
{
    public static IVsUIShell GetIVsUIShell(IServiceProvider serviceProvider)
    {
        IVsDataHostService hostService = serviceProvider.GetService(
            typeof(IVsDataHostService)) as IVsDataHostService;
        return hostService.GetService<IVsUIShell>();
    }
}

Vedere anche

Riferimenti

Spazio dei nomi Microsoft.VisualStudio.Data.Core