IVsDataProvider.SupportsObject 方法 (Guid, Type)

确定DDEX提供程序是否支持DDEX指定类型的支持指定的DDEX数据源的实体。

命名空间:  Microsoft.VisualStudio.Data.Core
程序集:  Microsoft.VisualStudio.Data.Core(在 Microsoft.VisualStudio.Data.Core.dll 中)

语法

声明
Function SupportsObject ( _
    source As Guid, _
    objType As Type _
) As Boolean
bool SupportsObject(
    Guid source,
    Type objType
)
bool SupportsObject(
    Guid source, 
    Type^ objType
)
abstract SupportsObject : 
        source:Guid * 
        objType:Type -> bool 
function SupportsObject(
    source : Guid, 
    objType : Type
) : boolean

参数

  • source
    类型:System.Guid
    一个DDEX数据源标识符或 Empty 没有特定的数据源的。
  • objType
    类型:System.Type
    DDEX的类型支持实体。

返回值

类型:System.Boolean
true ,如果DDEX提供程序支持DDEX指定类型的支持指定的DDEX数据源的实体;否则,false。

异常

异常 条件
ArgumentNullException

objType 参数为 nullnull 引用(在 Visual Basic 中为 Nothing)。

备注

是否支持指定的DDEX的确定DDEX提供程序支持基于实体添加到注册表。DDEX提供程序的信息。这使DDEX客户端检查特定提供程序的功能,而不必加载所有提供程序代码。这是有用,当您通过重复设置提供程序确定筛选的支持设置的特定支持实体的列表提供程序时。

DDEX提供程序将各种注册表项。SupportedObjects项下在它们的根注册表项下。这些键提供每个类型的名称支持支持的实体。名称必须是一个非空字符串,而无需额外的前导或拖尾空白,因此必须表示支持实体的可展开或完全限定的类型名。可展开支持实体 是展开为完全限定的类型名称通过预置Microsoft.VisualStudio.Data.Services.SupportEntities命名空间的非限定类型名称。有一些特定异常到此。这些异常包含 IVsDataProviderDynamicSupport,并 IVsDataSourceSpecializer 支持实体,预置带有Microsoft.VisualStudio.Data.Core命名空间。

说明说明

在Visual Studio中DDEX 2005中读取标识支持实体类型Microsoft.VisualStudio.Data程序集的注册表项。在Visual Studio 2008的DDEX仍读取兼容性目的这些注册表项和映射旧支持实体类型添加到新的。例如,在中,如果提供程序注册了旧DataConnectionProperties支持实体类型,对 SupportsObject 方法的调用与 IVsDataConnectionProperties 类型的一个Visual Studio 2005 DDEX提供程序将返回 true。

此外支持实体注册表项,DDEX提供程序可以添加表示特定DDEX数据源支持实体支持的子级在给定的下支持实体键。如果这些子项不存在,支持实体假定为所有DDEX数据源支持。如果一个或多个子存在,支持实体假定为仅指定的DDEX数据源支持。除了特定DDEX数据源的,实现外如果支持实体具有未指定的DDEX数据源的标准实现,则必须存在具有空GUID的一个子元素。还必须具有特定DDEX数据源的子级。如果任何子控件不是有效的GUID,将忽略此参数。

如果指定的支持实体类型中定义的具有默认实现,此方法始终返回 true。

示例

下面的代码演示如何标识一个指定的DDEX提供程序是否支持连接的方法与指定的数据源将连接UI中。

using System;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Data.Services.SupportEntities;

public class DDEX_IVsDataProviderExample9
{
    public static bool HasSpecialConnectForUI(
        IVsDataProvider provider, Guid source)
    {
        return provider.SupportsObject(
            source, typeof(IVsDataConnectionUIConnector));
    }
}

.NET Framework 安全性

请参见

参考

IVsDataProvider 接口

SupportsObject 重载

Microsoft.VisualStudio.Data.Core 命名空间