次の方法で共有


AddInToken.QualificationData プロパティ

定義

現在のトークンに関連付けられたパイプライン内のセグメントに関するデータのディクショナリを取得します。

public:
 property System::Collections::Generic::IDictionary<System::AddIn::Hosting::AddInSegmentType, System::Collections::Generic::IDictionary<System::String ^, System::String ^> ^> ^ QualificationData { System::Collections::Generic::IDictionary<System::AddIn::Hosting::AddInSegmentType, System::Collections::Generic::IDictionary<System::String ^, System::String ^> ^> ^ get(); };
public System.Collections.Generic.IDictionary<System.AddIn.Hosting.AddInSegmentType,System.Collections.Generic.IDictionary<string,string>> QualificationData { get; }
member this.QualificationData : System.Collections.Generic.IDictionary<System.AddIn.Hosting.AddInSegmentType, System.Collections.Generic.IDictionary<string, string>>
Public ReadOnly Property QualificationData As IDictionary(Of AddInSegmentType, IDictionary(Of String, String))

プロパティ値

各キーがパイプライン セグメントであり、値がセグメントごとの修飾データを表す名前と値のペアのディクショナリであるディクショナリ。

次の例は、アドインの修飾データを調べる方法を示しています。

// Use qualification data to control
// how an add-in should be activated.

if (selectedToken.QualificationData[AddInSegmentType.AddIn]["Isolation"].Equals("NewProcess"))
{
    // Create an external process.
    AddInProcess external = new AddInProcess();

    // Activate an add-in in the new process
    // with the full trust security level.
    Calculator CalcAddIn5 =
        selectedToken.Activate<Calculator>(external,
        AddInSecurityLevel.FullTrust);
    Console.WriteLine("Add-in activated per qualification data.");
}
else
{
    Console.WriteLine("This add-in is not designated to be activated in a new process.");
}
' Use qualification data to control
' how an add-in should be activated.

If selectedToken.QualificationData(AddInSegmentType.AddIn)("Isolation").Equals("NewProcess") Then
    ' Create an external process.
    Dim external As AddInProcess = New AddInProcess

    ' Activate an add-in in an automatically generated
    ' application domain with a full trust security level.
    Dim CalcAddin5 As Calculator = _
        selectedToken.Activate(Of Calculator)(external, _
            AddInSecurityLevel.FullTrust)
    Console.WriteLine("Add-in activated per qualification data.")
Else
    Console.WriteLine("This add-in is not designated to be activated in a new process.")
End If

注釈

属性を使用してパイプライン セグメントに適用されたデータを取得するには、このプロパティを QualificationDataAttribute 使用します。 このデータを使用して、パイプラインを構成する型を特定して操作できます。

このプロパティは、ディクショナリのディクショナリを返します。 最上位のディクショナリには常に 6 つのキーがあります。 各キーは、 AddInSegmentType パイプライン内のセグメントの値です。 各値は、セグメントの修飾データを含む文字列キーを持つ文字列のジェネリック IDictionary<TKey,TValue> です。

これらの内部ディクショナリのキーと値は、セグメントの属性で QualificationDataAttribute 指定された名前と値です。 セグメントに修飾データが適用されていない場合、そのディクショナリは空です。

注意

アドイン モデルでは、アドインのホスト ビューに適用される修飾データは使用されません。 その結果、 のディクショナリ AddInSegmentType.HostViewOfAddIn は常に空になります。

または、 ステートメント (For EachVisual Basic では Visual C++ の場合) を使用してforeach、 を構造体のQualificationDataItemコレクションであるかのように列挙AddInTokenすることで、for each修飾データを取得することもできます。 構造体の例を QualificationDataItem 参照してください。

適用対象