IVsDataProviderManager 인터페이스

DDEX 공급자 등록된의 검색 기능을 통해 DDEX 공급자 관리자 서비스를 노출 합니다.

네임스페이스:  Microsoft.VisualStudio.Data.Core
어셈블리:  Microsoft.VisualStudio.Data.Core(Microsoft.VisualStudio.Data.Core.dll)

구문

‘선언
<GuidAttribute("F8B01F14-9F78-4506-80A8-3534837AF0D4")> _
Public Interface IVsDataProviderManager
[GuidAttribute("F8B01F14-9F78-4506-80A8-3534837AF0D4")]
public interface IVsDataProviderManager
[GuidAttribute(L"F8B01F14-9F78-4506-80A8-3534837AF0D4")]
public interface class IVsDataProviderManager
[<GuidAttribute("F8B01F14-9F78-4506-80A8-3534837AF0D4")>]
type IVsDataProviderManager =  interface end
public interface IVsDataProviderManager

IVsDataProviderManager 형식에서는 다음과 같은 멤버를 노출합니다.

속성

  이름 설명
Public 속성 Providers 등록 된 모든 DDEX 공급자의 사전을 가져옵니다.

위쪽

설명

Visual Studio 로컬 레지스트리 하이브에 특정 레지스트리 키를 추가 하 여 특정 설치의 Visual Studio 있는지 DDEX 공급자를 등록 합니다. DDEX 공급자 관리자 서비스는 이러한 공급자를 열거 하 고 호출자에 게 등록 된 공급자의 목록을 제공 합니다. 또한 각 공급자가 제대로 등록 되어 있는지 확인 하기 위해 추가 작업을 수행 합니다. 등록 되지 않은 공급자에 대 한 정보는 Windows 이벤트 로그에 기록 됩니다 및 공급자가 호출자에 게 반환 되지 않습니다. 등록 특성은이 서비스에서 확인 됩니다.

  • DataProviders 키 아래에 레지스트리 키 공급자의 유효한 GUID ({xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}) 대괄호로 묶이고 하이픈으로 구분 된 32 자리 숫자의 구성입니다.

  • 공급자의 기술 레지스트리 값을 지정 하는 경우 유효한 GUID입니다.

  • 레지스트리 기반 공급자 인 경우

    • 파일 시스템에서 기존 파일을 가리키는 CodeBase 레지스트리 값이 존재 하며
  • 공급자 패키지를 기반으로 하는 경우:

    • FactoryService 레지스트리 값이 있고 유효한 GUID입니다.

    • FactoryService 레지스트리 값에 의해 식별 되는 서비스를 제공 하는 패키지를 등록 합니다.

참고 특정 버전의 Visual Studio 공급자를 사용할 수 있는 제한 하는 것입니다. 예를 들어, Express 버전 Microsoft DDEX 공급자의 작은 하위 집합만을 허용 합니다. 이러한 제한은 비즈니스 목적 이며 버전에서 사용할 수 있는 공급자 외에 추가 된 모든 항목을 재정의 합니다. 현재 환경에서 구현 하 여 지원 되는지 여부는 주어진된 DDEX 공급자 결정 수 동적으로 IVsDataProviderDynamicSupport 엔터티를 지원 합니다. 공급자 버전 또는 현재 환경에서 지원 되지 않는 것으로 판단 되는 경우이 서비스에 의해 반환 됩니다.

DDEX 공급자 관리자 서비스 환경에 등록 하 고 있으므로 글로벌 서비스 공급자 개체에서 서비스를 요청 하 여 액세스할 수 있는 전역 Visual Studio 서비스가입니다.

예제

다음 코드는 클라이언트 수 DDEX 공급자 관리자 서비스에서 글로벌 Visual Studio 서비스 공급자 검색 방법과 환경에서 등록 DDEX 공급자 집합을 열거 하는 방법을 보여 줍니다.

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

public class DDEX_IVsDataProviderExample1
{
    public static void EnumerateProviders(IServiceProvider serviceProvider)
    {
        IVsDataProviderManager providerManager =
            serviceProvider.GetService(typeof(IVsDataProviderManager))
                as IVsDataProviderManager;
        foreach (IVsDataProvider provider in providerManager.Providers.Values)
        {
            Trace.WriteLine(provider.Name);
        }
    }
}

참고 항목

참조

Microsoft.VisualStudio.Data.Core 네임스페이스