Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В примере InlineCode показано, как реализовать службу, размещенную службами IIS, где код службы содержится в строке в SVC-файле и компилируется по запросу. Код службы также можно реализовать непосредственно в файлах исходного кода, расположенных в каталоге \App_Code приложения, или компилироваться в сборку, развернутую в \bin. Этот пример не демонстрирует эти методы.
Замечание
Инструкции по настройке и сборке этого примера находятся в конце этого раздела.
В примере показана типичная служба, реализующая контракт, определяющий шаблон связи с запросом и ответом. Служба размещена в IIS, а код службы полностью содержится в файле Service.svc. Служба активируется на хосте и компилируется по запросу первым сообщением, отправленным в службу. Предварительной компиляции не требуется. Служба реализует контракт ICalculator, как он определён в следующем коде.
// 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);
}
Реализация службы вычисляет и возвращает соответствующий результат.
<%@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;
}
}
При запуске примера запросы и ответы операции отображаются в окне консоли клиента. Нажмите клавишу ВВОД в окне клиента, чтобы завершить работу клиента.
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.
Настройка, сборка и запуск примера
Убедитесь, что вы выполнили процедуру настройки One-Time для образцов Windows Communication Foundation.
Чтобы создать версию решения на C# или Visual Basic .NET, следуйте инструкциям по сборке примеров Windows Communication Foundation .
После создания решения запустите setup.bat, чтобы настроить приложение ServiceModelSamples в IIS 7.0. Каталог ServiceModelSamples теперь должен отображаться как приложение IIS 7.0.
Чтобы запустить пример в конфигурации с одним или несколькими компьютерами, следуйте инструкциям в разделе "Примеры Windows Communication Foundation". Пример создания клиентского приложения, которое может вызывать эту службу, см. в статье "Практическое руководство. Создание клиента".