Sdílet prostřednictvím


Hostování IIS pomocí vloženého kódu

Ukázka inlineCode ukazuje, jak implementovat službu hostovanou službou Internetová informační služba (IIS), kde je kód služby obsažený v řádku v souboru .svc a je zkompilován na vyžádání. Kód služby lze také implementovat přímo v souborech zdrojového kódu umístěných v adresáři \App_Code aplikace nebo zkompilován do sestavení nasazeného v \bin. Tato ukázka neukazuje tyto techniky.

Poznámka:

Postup nastavení a pokyny k sestavení pro tuto ukázku najdete na konci tohoto tématu.

Ukázka ukazuje typickou službu, která implementuje kontrakt, který definuje komunikační vzor žádosti a odpovědi. Služba je hostovaná ve službě IIS a kód služby je zcela obsažen v souboru Service.svc. Služba je aktivovaná hostitelem a kompilována na vyžádání první zprávou poslanou službě. Není nutná žádná předběžná kompilace. Služba implementuje ICalculator kontrakt definovaný v následujícím kódu:

// Define a service contract.
[ServiceContract(Namespace="http://Microsoft.ServiceModel.Samples")]
    public interface ICalculator
{
    [OperationContract]
    double Add(double n1, double n2);
    [OperationContract]
    double Subtract(double n1, double n2);
    [OperationContract]
    double Multiply(double n1, double n2);
    [OperationContract]
    double Divide(double n1, double n2);
}

Implementace služby vypočítá a vrátí odpovídající výsledek.

<%@ServiceHost language=c# Debug="true" Service="Microsoft.ServiceModel.Samples.CalculatorService" %>

// Service class that implements the service contract.
public class CalculatorService : ICalculator
{
    public double Add(double n1, double n2)
    {
        return n1 + n2;
    }
    public double Subtract(double n1, double n2)
    {
        return n1 - n2;
    }
    public double Multiply(double n1, double n2)
    {
        return n1 * n2;
    }
    public double Divide(double n1, double n2)
    {
        return n1 / n2;
    }
}

Při spuštění ukázky se požadavky na operace a odpovědi zobrazí v okně konzoly klienta. Stisknutím klávesy ENTER v okně klienta klienta ukončete klienta.

Add(100,15.99) = 115.99
Subtract(145,76.54) = 68.46
Multiply(9,81.25) = 731.25
Divide(22,7) = 3.14285714285714

Press <ENTER> to terminate client.

Nastavení, sestavení a spuštění ukázky

  1. Ujistěte se, že jste pro ukázky windows Communication Foundation provedli jednorázovou instalační proceduru.

  2. Pokud chcete sestavit edici C# nebo Visual Basic .NET řešení, postupujte podle pokynů v části Sestavení ukázek windows Communication Foundation.

  3. Po sestavení řešení spusťte setup.bat a nastavte aplikaci ServiceModelSamples ve službě IIS 7.0. Adresář ServiceModelSamples by se teď měl zobrazit jako aplikace IIS 7.0.

  4. Pokud chcete spustit ukázku v konfiguraci s jedním nebo více počítači, postupujte podle pokynů v části Spuštění ukázek windows Communication Foundation. Příklad vytvoření klientské aplikace, která může volat tuto službu, najdete v tématu Postupy: Vytvoření klienta.

Viz také