Язык

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))

Значение свойства

Словарь, ключи которого являются сегментами конвейеров и значениями, являются словарями пар name/value, представляющих данные квалификации для каждого сегмента.

Примеры

В следующем примере показано, как проверить данные квалификации надстройки.

// 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 . Эти данные можно использовать для идентификации и работы с типами, составляющими конвейеры.

Это свойство возвращает словарь словарей. В верхнем словаре всегда есть шесть ключей. Каждый ключ — это AddInSegmentType значение для сегмента в конвейере. Каждое значение представляет собой универсальный набор IDictionary<TKey,TValue> строк со строковыми ключами, содержащими данные квалификации сегмента.

Ключи и значения этих внутренних словарей — это имена и значения, указанные в QualificationDataAttribute атрибутах для сегментов. Если к сегменту не применены данные квалификации, его словарь пуст.

Note

Модель надстройки не использует данные квалификации, применяемые к представлению узла надстройки. В результате словарь всегда AddInSegmentType.HostViewOfAddIn пуст.

Кроме того, вы можете получить данные квалификацииAddInToken, перечислив QualificationDataItem как если бы это была коллекция структур, используя foreach инструкцию в C#. См. пример структуры QualificationDataItem .

Применяется к