C# Sending data using GET or POST

In this short article, I’ll show you how to send data to a website from a C# application using GET or POST method. The tutorial also includes how to receive data from a website, by getting the page’s source - so it’s a neat way to check if the everything is working as intended.

1. GET Method

Using the GET method is the easiest way to send any text data since all you have to do is to open the Url address with already-defined parameters, with WebClient. Notice that WebClient is IDisposable you can use it this way:

The code above opens a Url address, with 1 GET parameter: /somepage.php?username=john.

Now if you need to check what the program sent, use a PHP snippet like this one and look in the source of the page:

1
2
3
4

<?php$username=$_GET["username"];//make sure you filter these values, before showing them
echo$username;//$username == "john"
?>

2. POST Method

Sending data using POST, even if it looks similar to GET, you’ll need a different approach. Not very different, we’re still using WebClient, but we must also include a new class: NameValueCollection. This dictionary-like container will store each parameter’s name and value. Once all the data has been loaded, call WebClient.UploadValues to send the information to the webpage.