Post XML -Request/Reponse program

I apologize in advance for my lack of understanding of this topic. I hope this question will assist me in defining a framework on how to accomplish the task described below.

For this project a windows forms application will be created. The user will select an excel file. The program will create an XML file from the Excel file. The XML file must be POSTED though a Request to remote web site. The program must remain active until it receives and process the Response.

I am not sure where to start with my questions. So in no particular order:
1. Will I have to create a Windows IIS server? Can this be accomplished without IIS on a local workstation if the appropriate firewall changes are configured?
2. If I have to create an IIS server, how would the windows Forms program on the workstation communicate with another program (which I would have to also create I guess) on the web server? Would I create and install a DLL on the IIS server for the workstation to use?
3. I program in Visual Basic 2013, can you point me to any thorough tutorials for Request/Response code?

Another way to ask this question would be, how would you accomplish the task of having a user select an Excel file, process that file into XML and run a Request/Response session.

Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Gautham JanardhanCommented:
You wont need IIS (assuming you are not hosting the remote site)

the following code is a simple exmple of how to post data to a site and get response

var request = (HttpWebRequest)WebRequest.Create("");

var postData = "<myxml>......</myxml>";
var data = Encoding.ASCII.GetBytes(postData);

request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;

using (var stream = request.GetRequestStream())
    stream.Write(data, 0, data.Length);

var response = (HttpWebResponse)request.GetResponse();

var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();

Open in new window

To read the excel file there are two options

    .NET Interop
    Directly parsing the OpenXML document (Office 2007 and greater)

The first is easier, but the second works when you don't have Excel installed.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
mpdillonAuthor Commented:
Gautham Janardhan,
Thank you. I am glad I do not have to install an IIS server. I will post at least two more questions now that I have a direction.
And I apologize for the slow response. I have been working a lot.
mpdillonAuthor Commented:
Exactly what I was looking for. Thank you.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic.NET

From novice to tech pro — start learning today.