다음을 통해 공유


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
    형식: System.Guid
    DDEX 지원 공급자의 식별자입니다.
  • name
    형식: System.String
    검색할 속성의 이름입니다.

반환 값

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

예외

예외 조건
ArgumentNullException

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

설명

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

경우는 provider 매개 변수는 빈 GUID, DDEX 데이터 소스 루트 레지스트리 키 (Visual Studio 로컬 레지스트리 하이브는 데이터 원본 키)을 열고 요청에서 지정 된 키 값이이 메서드는 전역 데이터 원본 속성 값 검색 name.Provider 매개 변수는 올바른 지원 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 네임스페이스