IVsDataSourceSpecializer.GetType メソッド

特定の DDEX のデータ ソースの Type の対応する表示に、プロバイダー固有の型名を解決します。

名前空間:  Microsoft.VisualStudio.Data.Core
アセンブリ:  Microsoft.VisualStudio.Data.Core (Microsoft.VisualStudio.Data.Core.dll 内)

構文

'宣言
Function GetType ( _
    source As Guid, _
    typeName As String _
) As Type
Type GetType(
    Guid source,
    string typeName
)
Type^ GetType(
    Guid source, 
    String^ typeName
)
abstract GetType : 
        source:Guid * 
        typeName:string -> Type 
function GetType(
    source : Guid, 
    typeName : String
) : Type

パラメーター

  • source
    型 : System.Guid
    DDEX のデータ ソースの識別子。
  • typeName
    型 : System.String
    プロバイダー固有の型の名前。

戻り値

型 : System.Type
見つかった場合、指定された型の名前から、指定 DDEX のデータ ソースに解決される型を表すオブジェクトの Type ; それ以外 nullnull 参照 (Visual Basic では Nothing)。

例外

例外 条件
ArgumentNullException

typeName パラメーターが nullnull 参照 (Visual Basic では Nothing) です。

解説

プロバイダーは、データのサポートの XML ファイルなどの形式で文字列として指定される型の名前が、これらの型の名前は、CLR GetType のメソッドによって自動的に (または正しくないに解決されます。) 解決できない場合は、このメソッドを実装します。このメソッドの 1 種類の使用は未指定の名前空間を展開します。文字列が「MyType」である場合 (たとえば、CLR がそれを解決する前に「」Company.Product.MyType に配置する場合があります)。

このメソッドは、プロバイダーの項目の重複を、コード ベース全体の共通の名前空間、軽減するために役立つ型の名前の指定を短くするために使用されます。指定されたデータ ソースの特殊化は、共通型の名前を使用してこの方法により、さらに別 DDEX のデータ ソースがクライアントが対象とするときによって、異なる型を参照できるようになります。

次のコードは DDEX のデータ ソースによってすべての型名と異なる名前空間を追加するには、このメソッドを実装することを示します。例では、インターフェイスで他のメソッドの既定の実装を提供するフレームワークの DataSourceSpecializer のクラスから継承します。

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

public class MySourceSpecializer5 : DataSourceSpecializer
{
    private static readonly Guid s_dataSource1 =
        new Guid("EB5246D3-277C-4277-910F-111CB9EAD253");

    public override Type GetType(Guid source, string typeName)
    {
        if (source == s_dataSource1)
        {
            typeName = "Company.DdexProvider.Source1." + typeName;
        }
        else
        {
            typeName = "Company.DdexProvider." + typeName;
        }
        return GetType().Assembly.GetType(typeName);
    }
}

.NET Framework セキュリティ

  • 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

関連項目

IVsDataSourceSpecializer インターフェイス

Microsoft.VisualStudio.Data.Core 名前空間