none
SQL2005 & VB.net Objets rmo RRS feed

  • Question

  •  

    Bonjour,

     

    Je cherche à gerer des replications par fusion avec les objets rmo provenant du namespace

    "Microsoft.SqlServer.Replication"

    Ma synchro fonctionne correctement mais je voudrais recuperer l'evenement Status de la class MergeSynchronizationAgent.

    Voici mon bout de code:

     

    sub Replicat()

    'Le publisher et le distributor se trouve sur le meme serveur

    ' Crée une connection sur l'abonné

    Dim conn As ServerConnection = New ServerConnection(subscriberName, "xx", "xxxxx")

    ' Connection à l'abonné

    conn.Connect()

     

    Dim AgentDeSynchro As MergeSynchronizationAgent

    ' Definit l'abonnement de fusion sur l'abonné.

     

    subscription = New MergePullSubscription(subscriptionDbName, publisherName, publicationDbName, "Table2", conn)

     

    If subscription.LoadProperties() Then

    AgentDeSynchro = subscription.SynchronizationAgent

    '''''''''''''''''''c'est ici que je voudrais creer l'evenement''''''''''''''''''''

     

    AgentDeSynchro.Status = New AgentCore.StatusEventHandler(AddressOf StatusSync) ''Ligne en erreur

     

    With AgentDeSynchro

    .DistributorLogin = "xx"

    .DistributorPassword = "xxx"

    .PublisherLogin = "xx"

    .PublisherPassword = "xxx"

    .Synchronize()

    End With

    End If

    conn.Disconnect()

    end sub

     

    'Fonction a appeler quand evenement

    Sub StatusSync(ByVal sender As Object, ByVal e As StatusEventArgs)

    MsgBox(e.MessageStatus)

    End Sub

     

    Message d'erreur:

    Erreur 2 'Public Event Status(sender As Object, e As Microsoft.SqlServer.Replication.StatusEventArgs)' est un événement. Il ne peut donc pas être appelé directement. Utilisez une instruction 'RaiseEvent' pour déclencher un événement. G:\MesDocuments\Visual Studio 2005\Projects\EssaiReplication\EssaiReplication\Form1.vb 94 13 EssaiReplication

     

     

    Je ne trouve pas d'exemple sur la gestion de cet evenement,donc si quelqu'un peut m'aider ,merci d'avance

    mercredi 16 juillet 2008 07:14