IVsDataSource.GetProperty 메서드 (Guid, String)

DDEX 데이터 소스의 특정 지원 DDEX 공급자가 등록 된 속성을 가져옵니다.

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

구문

‘선언
Function GetProperty ( _
    provider As Guid, _
    name As String _
) As Object
Object GetProperty(
    Guid provider,
    string name
)
Object^ GetProperty(
    Guid provider, 
    String^ name
)
abstract GetProperty : 
        provider:Guid * 
        name:string -> Object
function GetProperty(
    provider : Guid, 
    name : String
) : Object

매개 변수

  • provider
    형식: Guid

    DDEX 지원 공급자의 식별자입니다.

  • name
    형식: String

    검색할 속성의 이름입니다.

반환 값

형식: Object
값 속성의 경우 존재 합니다. 그렇지 않으면 nullNull 참조(Visual Basic의 경우 Nothing).

예외

예외 조건
ArgumentNullException

name 매개 변수가 nullNull 참조(Visual Basic의 경우 Nothing)인 경우

설명

DDEX 데이터 원본 DDEX 데이터 원본에 대 한 정보를 확인 하는 클라이언트에 의해 액세스 되는 속성 집합을 등록할 수 있습니다. 또한 DDEX 데이터 소스를 지 원하는 각 DDEX 공급자 DDEX 데이터 소스와 연결 된 공급자 관련 속성을 등록할 수 있습니다.

경우는 provider 매개 변수는 빈 GUID이이 메서드 DDEX 데이터 소스 루트 레지스트리 키 (아래에서 Visual Studio 로컬 레지스트리 하이브의 데이터 원본 키) 연가 지정 된 키의 값을 요청 하 여 전역 데이터 원본 속성 값을 검색, name. 이 메서드는 데이터 소스의 루트 레지스트리 키 아래에 지원 공급자의 하위 키를 열고 지정 된 하위이 키 아래에서 값을 요청 공급자별 데이터 원본 속성 값 검색 공급자 매개 변수가 유효한 지원 DDEX 공급자 식별자 이면 name. 특정 속성을 요청한 후 결과값 DDEX 런타임에서 메모리에 저장 되 고 Visual Studio 다시 시작할 때까지 새로 고쳐지지 않습니다.

예제

다음 코드에서는 구현 된 DisplayName 속성입니다. 적절 한 지원 공급자를 사용 하는 기본 공급자에 따라 공급자에 대 한 값을 제공 하거나 지역화 된 문자열을 공급자를 지원 하 여만 제공 되므로 결정의 DisplayName 속성입니다. 다음 해결이 실제 지역화 된 문자열로 DDEX 공급자 API를 사용 하 여.

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

public class DDEX_IVsDataSourceExample2
{
    public static string GetSourceDisplayName(
        IServiceProvider serviceProvider,
        IVsDataSource dataSource)
    {
        string displayName = null;
        string resourceId = null;
        Guid provider = dataSource.DefaultProvider;
        if (provider != Guid.Empty)
        {
            resourceId = dataSource.GetProperty(provider, "DisplayName") as string;
        }
        if (resourceId == null)
        {
            foreach (Guid providerId in dataSource.GetProviders())
            {
                resourceId = dataSource.GetProperty(
                    providerId, "DisplayName") as string;
                if (resourceId != null)
                {
                    provider = providerId;
                    break;
                }
            }
        }
        if (provider != Guid.Empty && resourceId != null)
        {
            IVsDataProviderManager providerManager = serviceProvider.GetService(
                typeof(IVsDataProviderManager)) as IVsDataProviderManager;
            IVsDataProvider dataProvider = providerManager.Providers[provider];
            displayName = dataProvider.GetString(resourceId);
        }
        return displayName;
    }
}

.NET Framework 보안

참고 항목

참조

IVsDataSource 인터페이스

GetProperty 오버로드

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