Was ist der Unterschied zwischen [OperationContract(IsOneWay = true)], und überprüfen Sie den generierten asynchrone Operationen checkbox?

Was ist der Unterschied zwischen Kennzeichnung eine WCF-Methode mit

[OperationContract(IsOneWay = true)]

Attribut und überprüfung der generieren asynchrone Operationen Markierungsfeld " beim hinzufügen der service Referenz?

Von dem, was ich gelesen habe, scheint es die asynchrone Natur der Aufruf sollte nur definiert werden, auf der client-Seite.
Wenn das der Fall ist, was ist der Punkt, der [OperationContract(IsOneWay = true)]?

Gerade jetzt, ich habe nur die folgende Methode ausgeführt, die in der WCF-Methode.

 public void UpdateIndex(IndexElement[] indexElements)
    {
        //start the update on a new thread.
        Thread thread = new Thread(() => UpdateIndexThread(indexElements));
        thread.Start();
    }

Erstellte ich eine service-Referenz in meinem client code, und ich einfach anrufen:

indexerClient.UpdateIndex(indexElements);

Wo indexerClient ist eine Instanz des WCF-Diensts.

Sollte dies auch funktionieren? Es scheint nicht, es ist fast, als ob er wartet, bis der thread abgeschlossen ist, bevor Sie zurückkehren.

InformationsquelleAutor Matt | 2009-12-14
Schreibe einen Kommentar