Dela via


Anvisningar: Använda en tjänstmoniker med Exchange-metadatakontrakt

När du har utvecklat några nya WCF-tjänster kan du bestämma dig för att du vill kunna anropa dessa tjänster från ett skript eller ett Visual Basic 6.0-program. En metod är att generera en WCF-klientsammansättning, registrera sammansättningen med COM, installera sammansättningen i GAC och sedan referera till COM-typerna från Visual Basic-koden. När du distribuerar programmet måste du även distribuera WCF-klientsammansättningen. Användaren måste sedan registrera WCF-klientsammansättningen med COM och placera den i GAC. Med WCF COM Interop kan du också göra samma tjänstanrop utan att förlita dig på en WCF-klientsammansättning. Med WCF-monikern kan du anropa valfri WCF-tjänst från alla COM-kompatibla språk (Visual Basic, VBScript, Visual Basic for Applications (VBA) och så vidare genom att ange en slutpunkts-URI för metadatautbyte (Mex) som tjänstmonikern använder för att extrahera typinformation om tjänsten. Det här avsnittet beskriver hur du anropar WCF-exemplet komma igång med en WCF-moniker som anger en Mex-slutpunkt.

Kommentar

De typer som definieras av WCF-klientsammansättningen instansieras aldrig. Sammansättningen används endast för metadata.

Använda tjänstmonikern med en Mex-adress

  1. Skapa exemplet Komma igång och använd en webbläsare för att bläddra till dess URL (http://localhost/ServiceModelSamples/Service.svc) för att säkerställa att tjänsten fungerar.

  2. Skapa ett Visual Basic-skript eller Visual Basic-program som innehåller följande kod:

    monString = "service:mexaddress=http://localhost/ServiceModelSamples/Service.svc/MEX"  
    monString = monString + ", address=http://localhost/ServiceModelSamples/Service.svc"  
    monString = monString + ", contract=ICalculator, contractNamespace=http://Microsoft.ServiceModel.Samples"  
    monString = monString + ", binding=WSHttpBinding_ICalculator, bindingNamespace=http://Microsoft.ServiceModel.Samples"  
    
    Set calc = GetObject(monString)  
    MsgBox calc.Add(3, 4)  
    
  3. Kör Visual Basic-programmet eller skriptet.

    Kommentar

    Tjänsten du anropar måste exponera en Mex-slutpunkt för att monikern ska kunna läsa metadata från tjänsten. Mer information finns i Publicera metadata för en tjänst med hjälp av en konfigurationsfil.

    Kommentar

    Om monikern är felaktigt formaterad eller om tjänsten inte är tillgänglig returnerar anropet till GetObject ett fel med texten "Ogiltig syntax". Om du får det här felet kontrollerar du att monikern du använder är korrekt och att tjänsten är tillgänglig.

Se även