IVsDataProvider.GetUnsupportedReason 메서드 (Guid, CommandID, Object)
작업 지정한 DDEX 데이터 원본에 지원 되지 않습니다 이유를 설명 하는 지역화 된 문자열을 가져옵니다.
네임스페이스: Microsoft.VisualStudio.Data.Core
어셈블리: Microsoft.VisualStudio.Data.Core(Microsoft.VisualStudio.Data.Core.dll)
구문
‘선언
Function GetUnsupportedReason ( _
source As Guid, _
command As CommandID, _
context As Object _
) As String
string GetUnsupportedReason(
Guid source,
CommandID command,
Object context
)
String^ GetUnsupportedReason(
Guid source,
CommandID^ command,
Object^ context
)
abstract GetUnsupportedReason :
source:Guid *
command:CommandID *
context:Object -> string
function GetUnsupportedReason(
source : Guid,
command : CommandID,
context : Object
) : String
매개 변수
source
형식: GuidDDEX 데이터 소스 식별자입니다.
command
형식: CommandID작업을 식별 하는 명령입니다.
context
형식: Object작업이 존재 하는 컨텍스트를 나타내는 개체입니다.
반환 값
형식: String
이유 지정한 작업이 지원 되지 않습니다, 실제로 작업은 지원 되지 않습니다; 경우에 대해 설명 하는 지역화 된 문자열 그렇지 않으면 nullNull 참조(Visual Basic의 경우 Nothing).
예외
예외 | 조건 |
---|---|
ArgumentNullException | command 매개 변수가 nullNull 참조(Visual Basic의 경우 Nothing)입니다. |
[<ANY>] | DDEX 공급자 GetUnsupportedReason 구현에서 예외가 발생 했습니다. |
설명
이 메서드를 사용 하면 DDEX 클라이언트 작업을 수행 하려고 할 때 현재 환경에서 지원 되지 않는 이유를 설명 하는 구체적인 이유를 사용 하 여 사용자에 게 제공할 수 있습니다. 환경 버전의 Visual Studio 실행 하 고 런타임 구성 요소를 컴퓨터에 설치 된 따라 다를 수 있습니다. 일반적으로 이전 Visual Studio 버전 (예를 들어, 일부 명령은 Express 버전에 대 한 제한)에 의해 제어 반면 후자는 일반적으로 제어 되는 공급자에 의해 IVsDataProviderDynamicSupport 있는 경우 구현 합니다.
많은 작업은 몇 가지 큰 컨텍스트 내에서 발생합니다. 이 간단한 예제에서는 특정 연결의 컨텍스트에서 발생 하는 연결에 대 한 열기 명령입니다. context 매개 변수 GetUnsupportedReason 에 전달 하 고 작업을 지원 하지 않는다는 이유로 확인의 일부로 사용 되는 개체를 인식할 수 있습니다.
이 메서드는 Visual Studio 버전에는 작업을 지원 하지 않는다는 이유 있는지 여부를 확인 하 여 시작 합니다. 이 쿼리에서 반환 하는 경우 nullNull 참조(Visual Basic의 경우 Nothing) (즉, Visual Studio 작업을 지원 하지 않아도) 공급자가 제공 하 고는 IVsDataProviderDynamicSupport 작업을 지원 하지 않는다는 이유로 공급자를 쿼리를 구현 합니다.
예제
다음 코드에서는 호출 하는 IsOperationSupported 공급자 특정 데이터 탐색기 노드 삭제를 지원 하는지 여부를 확인 하. 코드를 호출 하 여, 그렇지 않은 경우 GetUnsupportedReason 해당 작업이 지원 되지 않는 이유를 설명 하기 위해 적절 한 메시지를 확인할 수 있습니다.
using System;
using System.Windows.Forms;
using System.ComponentModel.Design;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Data.Services;
public class DDEX_IVsDataProviderExample7
{
public static bool AllowDelete(IVsDataProvider provider,
IVsDataExplorerNode node)
{
if (!provider.IsOperationSupported(StandardCommands.Delete, node))
{
MessageBox.Show(provider.GetUnsupportedReason(
StandardCommands.Delete, node));
return false;
}
return true;
}
}
.NET Framework 보안
- 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용를 참조하세요.