Sdílet prostřednictvím


Korelace dotazů zpráv LINQ

Ukázka LinqMessageQueryCorrelation ukazuje, jak provádět korelaci založenou na obsahu pomocí vlastní MessageQuery implementace na rozdíl od systémově poskytnuté XPathMessageQuery implementace.

Demonstruje

Vlastní MessageQuery korelace založená na obsahu.

Diskuse

Tato ukázka ukazuje, jak rozšířit ze MessageQuery základní třídy pro účely korelace. Vlastní implementace, LinqMessageQuery, umožňuje uživatelům poskytnout XName pro vyhledání ve zprávě pomocí XLinq. Data načtená dotazem slouží k vytvoření korelačního klíče pro odesílání zpráv do příslušné instance pracovního postupu.

Jak nastavit, sestavit a spustit ukázku

  1. Tato ukázka zveřejňuje službu pracovního postupu pomocí koncových bodů HTTP. Chcete-li spustit tuto ukázku, je nutné přidat správné seznamy ACL adres URL (viz Konfigurace protokolu HTTP a HTTPS pro podrobnosti), buď spuštěním sady Visual Studio jako správce, nebo spuštěním následujícího příkazu na příkazovém řádku se zvýšenými oprávněními k přidání příslušných seznamů ACL. Ujistěte se, že se nahradí vaše doména a uživatelské jméno.

    netsh http add urlacl url=http://+:8000/ user=%DOMAIN%\%UserName%
    
  2. Jakmile přidáte ACL pro adresy URL, postupujte podle následujících kroků.

    1. Sestavte řešení.

    2. Nastavte více spouštěných projektů tak, že kliknete pravým tlačítkem na řešení a vyberete Nastavit projekty po spuštění. Přidejte službu a klienta (v daném pořadí) jako více spouštěcích projektů.

    3. Aplikaci spusťte. Konzole klienta zobrazuje pracovní postup, který odešle objednávku, poté obdrží ID nákupní objednávky a následně potvrzuje objednávku. V okně Služby se zobrazí zpracovávané žádosti.