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 .