Condividi tramite


Procedura: Utilizzo dei profili agenti di replica (programmazione RMO)

I profili agenti di replica sono utilizzati per definire i valori predefiniti quando viene creato un processo dell'agente. Ogni agente dispone di un profilo predefinito e alcuni agenti dispongono di profili predefiniti aggiuntivi. È possibile creare profili definiti dall'utente tramite gli oggetti RMO (Replication Management Objects). Per ulteriori informazioni sui profili, vedere Profili degli agenti di replica.

Per creare un nuovo profilo agente

  1. Creare una connessione al server di distribuzione tramite un'istanza della classe ServerConnection.

  2. Creare un'istanza della classe AgentProfile.

  3. Impostare le proprietà indicate di seguito nell'oggetto.

    • Name: nome del profilo.

    • AgentType: valore di AgentType che specifica il tipo di agente di replica per il quale viene creato il profilo.

    • ConnectionContext: oggetto ServerConnection creato nel passaggio 1.

    • (Facoltativo) Description: descrizione del profilo.

    • (Facoltativo) Default: impostare questa proprietà su true se tutti i processi del nuovo agente per AgentType utilizzeranno questo profilo per impostazione predefinita.

  4. Chiamare il metodo Create per creare il profilo nel server.

  5. Una volta reso disponibile il profilo nel server, è possibile personalizzarlo aggiungendo, rimuovendo o modificando i valori dei parametri dell'agente di replica.

  6. Per assegnare il profilo a un processo dell'agente di replica esistente, chiamare il metodo AssignToAgent. Passare il nome del database di distribuzione per distributionDBName e l'ID del processo per agentID.

Per modificare un profilo agente esistente

  1. Creare una connessione al server di distribuzione tramite un'istanza della classe ServerConnection.

  2. Creare un'istanza della classe ReplicationServer. Passare l'oggetto ServerConnection creato nel passaggio 1.

  3. Chiamare il metodo LoadProperties. Se il metodo restituisce false, verificare che il server di distribuzione esista.

  4. Chiamare il metodo EnumAgentProfiles. Passare un valore di AgentType per limitare i profili restituiti a un tipo specifico di agente di replica.

  5. Ottenere l'oggetto AgentProfile desiderato dall'oggetto ArrayList restituito, dove la proprietà Name dell'oggetto corrisponde al nome del profilo.

  6. Chiamare uno dei metodi di AgentProfile indicati di seguito per modificare il profilo.

    • AddParameter: aggiunge un parametro supportato al profilo, dove name è il nome del parametro dell'agente di replica e value è il valore specificato. Per enumerare tutti i parametri dell'agente supportati per un tipo di agente specificato, chiamare il metodo EnumParameterInfo. Questo metodo restituisce una classe ArrayList di oggetti AgentProfileParameterInfo che rappresentano tutti i parametri supportati.

    • RemoveParameter: rimuove un parametro esistente dal profilo, dove name è il nome del parametro dell'agente di replica. Per enumerare tutti i parametri dell'agente corrente definiti per il profilo, chiamare il metodo EnumParameters. Questo metodo restituisce una classe ArrayList di oggetti AgentProfileParameter che rappresentano il parametro esistente per il profilo.

    • ChangeParameter: modifica l'impostazione di un parametro esistente nel profilo, dove name è il nome del parametro dell'agente e newValue è il valore nel quale viene modificato il parametro. Per enumerare tutti i parametri dell'agente corrente definiti per il profilo, chiamare il metodo EnumParameters. Questo metodo restituisce una classe ArrayList di oggetti AgentProfileParameter che rappresentano il parametro esistente per il profilo. Per enumerare tutte le impostazioni del parametro dell'agente supportate, chiamare il metodo EnumParameterInfo. Questo metodo restituisce una classe ArrayList di oggetti AgentProfileParameterInfo che rappresentano i valori supportati per tutti i parametri.

Per eliminare un profilo agente

  1. Creare una connessione al server di distribuzione tramite un'istanza della classe ServerConnection.

  2. Creare un'istanza della classe AgentProfile. Impostare il nome del profilo per la proprietà Name e l'oggetto ServerConnection creato nel passaggio 1 per la proprietà ConnectionContext.

  3. Chiamare il metodo LoadProperties. Se il metodo restituisce false, il nome specificato non è corretto o il profilo non esiste nel server.

  4. Verificare che la proprietà Type sia impostata su User, in modo da indicare un profilo del cliente. Non è necessario rimuovere un profilo con valore System per Type.

  5. Chiamare il metodo Remove per rimuovere dal server il profilo definito dall'utente rappresentato da questo oggetto.