Пример WSDL-описания Web-сервиса:
<definitions name="http://namespacePath"
location="serviceName">
<import namespace="http://namespacePath"
location="http://path/fileName.wsdl">
<portType name="serviceNamePortType">
<operation name="opName""
<input message="msgNameInput" />
<output message="msgNameOutput" />
</operation>
</portType>
<binding name="serviceNameSoapBinding">
<soap:operation soapAction="http://..." />
</binding>
<service name="serviceName">
<port name="serviceNamePort" binding="bindingName">
<soap:address location="http://..." />
</port>
</service>
</definitions>
Использование Web-сервисов основано на следующих принципах. Полностью разделена логика размещения и вызова: сервис представлен в виде пары файлов - aspx и .aspx.cs (или .aspx.vb). Файлы .aspx предназначены для дизайнеров, файлы .aspx.cs - для программистов. Таким образом достигается легкость сопровождения приложения. Файл кода на C# или VB.NET, реализующий обработчики событий, связанных с обработкой Web-страницы, называется code-behind.
Фрагмент кода Web-сервиса:
<%@ Import Namespace="MathServiceSpace" %>
<script language="C#" runat="server">
public void Submit_Click(Object S, EventArgs E) {
service.Add(operand1, operand2);
...
</script>
...
<input OnServerClick="Submit_Click" runat="server" ...>