LINQ-üzenet lekérdezésének korrelációja

A LinqMessageQueryCorrelation minta bemutatja, hogyan lehet tartalomalapú korrelációt végezni egyéni MessageQuery implementációval a rendszer által biztosított XPathMessageQueryhelyett.

Megmutatja

Egyéni MessageQuery, tartalomalapú korreláció.

Megbeszélés

Ez a minta bemutatja, hogyan lehet kiterjeszteni az MessageQuery alaposztályt korreláció céljából. Az egyéni implementáció LinqMessageQuery lehetővé teszi, hogy a felhasználók megadjanak egy XName-et, amelyet az üzenetben keresnek az XLinq használatával. A lekérdezés által lekért adatok a korrelációs kulcsot használják az üzenetek megfelelő munkafolyamat-példányba való küldéséhez.

A példa beállítása, elkészítése és futtatása

  1. Ez a minta EGY MUNKAFOLYAMAT-szolgáltatást tesz elérhetővé HTTP-végpontok használatával. A minta futtatásához hozzá kell adni a megfelelő URL-cím ACL-eket (a részletekért lásd: HTTP és HTTPS konfigurálása ), a Visual Studio rendszergazdaként való futtatásával vagy a következő parancs rendszergazdai kéréssel történő végrehajtásával a megfelelő ACL-ek hozzáadásához. Győződjön meg arról, hogy a tartomány és a felhasználónév helyettesítve van.

    netsh http add urlacl url=http://+:8000/ user=%DOMAIN%\%UserName%
    
  2. Az URL-cím ACL-ek hozzáadása után kövesse az alábbi lépéseket.

    1. Hozza létre a megoldást.

    2. Több indítási projekt beállításához kattintson a jobb gombbal a megoldásra, és válassza az Indítási projektek beállítása lehetőséget. Adja hozzá a szolgáltatást és az ügyfelet (ebben a sorrendben) több indítási projektként.

    3. Indítsa el az alkalmazást. Az ügyfélkonzol egy megrendelést küldő munkafolyamatot jelenít meg, amely megkapja a rendelés azonosítóját, majd később megerősíti a rendelést. A Szolgáltatás ablak megjeleníti a feldolgozandó kéréseket.