Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese
Informazioni
L'argomento richiesto è visualizzato di seguito, ma non è incluso in questa libreria.

Procedura: utilizzare dati di qualificazione

È possibile assegnare dati di qualificazione a un segmento della pipeline per qualsiasi scopo, applicando uno o più attributi QualificationDataAttribute al segmento. Ogni attributo specifica una semplice coppia nome/valore di dati in formato stringa. Ad esempio, è possibile indicare che un componente aggiuntivo deve essere attivato con attendibilità totale specificando la coppia nome/valore "Security" e "FullTrust". Analogamente, è possibile indicare che un segmento della pipeline deve essere isolato nel proprio processo specificando la coppia nome/valore "Isolation" e "NewProcess".

Per applicare dati di qualificazione a un segmento di pipeline

  • Utilizzare l'attributo QualificationDataAttribute.

    
    // This pipeline segment has
    // two attributes:
    // 1 - An AddInAttribute to identify
    //     this segment as an add-in.
    //
    // 2 - A QualificationDataAttribute to
    //     indicate that the add-in should
    //     be loaded into a new application domain.
    
        [AddIn("Calculator Add-in",Version="2.0.0.0")]
        [QualificationData("Isolation", "NewAppDomain")]
        public class SampleV2AddIn : Calculator2
        {
    
    
    

Per determinare i dati di qualificazione per un particolare segmento di pipeline

  • Utilizzare la proprietà QualificationData su un oggetto AddInToken per ottenere un dizionario di segmenti e i relativi dati di qualificazione associati al token, quindi utilizzare il valore AddInSegmentType adatto per ottenere un dizionario che contiene le coppie nome/valore che comprendono i dati di qualificazione per il segmento desiderato.

    
    // 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.");
    
    
    

    Se non ci sono dati di qualificazione per un segmento, il dizionario di coppie nome/valore è vuoto.

    Nota Nota

    Il modello di componente aggiuntivo non utilizza i dati di qualificazione applicati alla visualizzazione host del componente aggiuntivo. Di conseguenza, il dizionario per AddInSegmentType.HostViewOfAddIn è sempre vuoto.

Per elencare i dati di qualificazione per tutti i segmenti di pipeline

  • Enumerare l'oggetto AddInToken come se fosse una raccolta di strutture QualificationDataItem.

    
    // Show the qualification data for each
    // token in an AddInToken collection.
    foreach (AddInToken token in tokens)
    {
        foreach (QualificationDataItem qdi in token)
        {
            Console.WriteLine("{0} {1}\n\t QD Name: {2}, QD Value: {3}",
                token.Name,
                qdi.Segment, 
                qdi.Name, 
                qdi.Value);
        }
    }
    
    
    
    
    Nota Nota

    Il modello di componente aggiuntivo non utilizza i dati di qualificazione applicati alla visualizzazione host del componente aggiuntivo. Di conseguenza, quando si enumerano i dati di qualificazione non si troveranno elementi la cui proprietà Segment è AddInSegmentType.HostViewOfAddIn.

Mostra: