Trending October 2023 # How Does Soap Work In C# With Query Examples # Suggested November 2023 # Top 16 Popular |

Trending October 2023 # How Does Soap Work In C# With Query Examples # Suggested November 2023 # Top 16 Popular

You are reading the article How Does Soap Work In C# With Query Examples updated in October 2023 on the website We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested November 2023 How Does Soap Work In C# With Query Examples

Introduction to C# SOAP

SOAP (Simple Access Object Protocol) is an XML-based protocol and provides a facility for applications written in different languages and running on different platforms to interact with each other. It works over HTTP. SOAP is a lightweight protocol as it is based on XML, which is a lightweight language. C# SOAP is independent of the platform and operating system on which it is working, which makes it easier for it to exchange data between different applications working on different platforms. It is a loosely coupled protocol because it doesn’t require communicating applications to be in the same language.

Start Your Free Software Development Course

Web development, programming languages, Software testing & others


The syntax rules for defining a SOAP message are as follows:

Encoding of a SOAP message should be done using XML language. It should use the SOAP Envelope namespace. It should not consist of DTD reference and XML processing instructions.

How does SOAP work in C#?

SOAP works on Marshalling and Demarshalling mechanisms. It uses HTTP protocol to send XML-based messages called SOAP messages to the server for processing. These SOAP messages contain information for processing. We can call this an HTTP request, and this method of wrapping the information into a SOAP message is called Marshalling.

Now, the server takes the request from the client and unwraps the SOAP message sent by the client. The server then processes the request and sends the appropriate response to the client in the form of a SOAP message. This method of unwrapping the information is called Demarshalling.

Elements of SOAP Message

A Soap message consists of the following elements:

1. SOAP Envelope element: This element is the root element of the SOAP message. It tells that the specific XML document is a SOAP message. It contains details of the SOAP message. Header element: The SOAP header element is an optional element of the SOAP message. But if the SOAP message contains this element, then it should be the first child element of the root Envelope element, and the child elements of the Header should be qualified as a namespace. This element contains information like payment information, authentication credentials, etc. SOAP Body element: This element contains the actual information to be exchanged between the two endpoints. It contains request and response information.

Please find below an example of a SOAP Body element from a SOAP response message containing the employee details:


2. SOAP Fault element: When a SOAP message is sent to the server, then the response returned by the server can contain either the information required in the request on successful processing of the request or it can contain an error message. Thus, this element contains error-related information. If a SOAP message contains this element, then it should be a child element of the Body element.

The sub-elements of the Fault element are as follows:

Please find below a diagram showing the SOAP message structure:

The elements with the colored background are optional elements of a SOAP message.

Let us see the steps required to create a SOAP web service in C#. The steps are as follows:

Select C# and Web template; under that, select chúng tôi Web Application.

Give the name and location of the solution.

Now, this project will appear in the Solution Explorer.

In this service file, you can add your code for the service and can execute it as shown in the example under the Example section.

Examples to Implement C# SOAP

Below are the examples mentioned :

Example #1


using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Services; namespace WebApplication4 { [WebService(Name ="Sample Web Service")] public class WebService1 : System.Web.Services.WebService { [WebMethod] public string Message() { return "Learning SOAP web service"; } } }


Example #2


POST chúng tôi HTTP/1.1 Host: localhost Content-Type: text/xml; charset=utf-8 Content-Length: length

In the above message, the first element is the Envelope element. Then this message contains the Body element, which provides details of the SOAP message.


HTTP/1.1 200 OKContent-Type: text/xml; charset=utf-8Content-Length: length 

The first line of this message contains code ‘200’, which indicates a successful response from the server. This message contains an Envelope element and then a Body element containing details of the response from the server. We can see a tag ‘MessageResult’ with a value string, indicating that our Web Method (Message) result will be of a type string.



SOAP i.e. Simple Object Access Protocol, is a lightweight and loosely coupled protocol that can exchange data between applications written in different programming languages and working on different platforms. It exchanges data in the form of SOAP messages in XML language and works over HTTP protocol.

Recommended Articles

This is a guide to C# SOAP. Here we discuss an introduction to C# SOAP, syntax, and how it works, with query examples for better understanding. You can also go through our other related articles to learn more –

You're reading How Does Soap Work In C# With Query Examples

Update the detailed information about How Does Soap Work In C# With Query Examples on the website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!