IVsDataSourceSpecializer.DeriveSource メソッド

可能であれば、DDEX プロバイダー固有のデータ接続文字列から DDEX のデータ ソースを取得します。

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

構文

'宣言
Function DeriveSource ( _
    connectionString As String _
) As Guid
Guid DeriveSource(
    string connectionString
)
Guid DeriveSource(
    String^ connectionString
)
abstract DeriveSource : 
        connectionString:string -> Guid 
function DeriveSource(
    connectionString : String
) : Guid

パラメーター

  • connectionString
    型 : System.String
    対象のデータ ソースを定義する DDEX プロバイダー固有のデータ接続文字列。

戻り値

型 : System.Guid
ターゲットのデータ ソースの種類を表すように決定された、有効な登録済み DDEX のデータ ソースの識別子は、接続文字列によって識別されます。

例外

例外 条件
ArgumentNullException

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

解説

これは IVsDataSourceSpecializer のインターフェイスの最も重要なメソッドです。この場合は、プロバイダーは、接続文字列情報が指す DDEX のデータ ソースのサポートを特化したかどうかを確認するに DDEX プロバイダー識別子とデータ接続文字列を使用することを DDEX のクライアントができます。このメソッドが空でない GUID を返す場合、クライアントは通常、方向が変更され、サポートのエンティティ データのソース固有の実装を取得するに DDEX のデータ ソースの識別子を渡すインターフェイスの他のメソッドを呼び出します。

次のコードは、Microsoft SQL Server DDEX プロバイダーに対してこのメソッドの基本実装を示します。このプロバイダーは、2 種類のデータ ソースをサポートします: 1 つが、SQL Server データベースであり、別のコンピューターでローカルのデータベース ファイルを使用する SQL Server Express Edition データベースです。接続文字列に AttachDBFilename のキーワードがある場合にデータ ソースがデータベース ファイル必要があると判断します。(この例では、文字列を適切に解析することな推奨される方法を示すとおりです)。例では、インターフェイスで他のメソッドの既定の実装を提供するフレームワークの DataSourceSpecializer のクラスから継承します。

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

public class MySourceSpecializer3 : DataSourceSpecializer
{
    private static readonly Guid s_sqlServerDataSource =
        new Guid("067EA0D9-BA62-43f7-9106-34930C60C528");
    private static readonly Guid s_sqlServerFileDataSource =
        new Guid("485C80D5-BC85-46db-9E6D-4238A0AD7B6B");

    public override Guid DeriveSource(string connectionString)
    {
        if (connectionString == null)
        {
            throw new ArgumentNullException("connectionString");
        }
        if (connectionString.Contains("AttachDBFilename"))
        {
            return s_sqlServerFileDataSource;
        }
        return s_sqlServerDataSource;
    }
}

.NET Framework セキュリティ

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

参照

関連項目

IVsDataSourceSpecializer インターフェイス

Microsoft.VisualStudio.Data.Core 名前空間