Solved

Send XML Read Xml ASP Page

Posted on 2006-11-16
8
1,782 Views
Last Modified: 2008-01-09
I have an ASP Page

Visual Studio 2005, CF2 , C#

When i call my website i have to send a bunch of XML nodes , Probably coming from an exe (VS 2005 C#).

How do i do I send the XML and how does my Web Page Read the XML?


0
Comment
Question by:Mikal613
8 Comments
 
LVL 35

Expert Comment

by:YZlat
ID: 17957335
send to where? read from where?
0
 
LVL 48

Author Comment

by:Mikal613
ID: 17957534
Heres the scenario

on 69.23.23.23 i have a webPage  Default.aspx

I wanna send parameters FROM 213.345.234.122 to 69.23.23.23 and it will populate the info based on the parameters.

0
 
LVL 9

Expert Comment

by:deathtospam
ID: 17957573
Mikal613 --

I just want to make sure I understand your question:

1) You have a Classic ASP page that needs to send some XML-formatted data to another website, and then interpret the XML that is returned.
2) The website that you are trying to communicate with, which is receiving the data and returning output, is running ASP.NET / C# (Visual Studio 2005).

Please tell us if this is accurate or not, so we can better assist you.


-= DeathToSpam =-
0
Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

 
LVL 48

Author Comment

by:Mikal613
ID: 17957602
1)Its a desktop App that will call the web page like

69.23.23.23\MyWebPage\Default.aspx?Id=23,23,23Name=45,45,45,45

and then my webpage some how should retrieve the Id's and Names

0
 
LVL 48

Author Comment

by:Mikal613
ID: 17957606
Pref using XML
0
 
LVL 22

Expert Comment

by:_TAD_
ID: 17988308


You will want to use the HttpWebRequest and HttpWebResponse classes to create a proxy that can read the uri streams (which, of course, will be in XML format).

The request (calling function) will look something like:



   byte[] buff = System.Text.Encoding.ASCII.GetBytes(myXML);

   HttpWebRequest myHttpRequest = (HttpWebRequest)HttpWebRequest.Create(<URL>);
   myHttpRequest.Method = "POST";
   myHttpRequest.KeepAlive = false;
   myHttpRequest.ContentType = "application/x-www-form-urlencoded";
   myHttpRequest.ContentLength = buff.Length;
   NetworkCredential cred = new NetworkCredential("user","password","myDomain");;
   CredentialCache credCache = new CredentialCache();
   credCache.Add(new Uri(serviceURI), "Basic", cred);
   myHttpRequest.Credentials = credCache;
   myHttpRequest.Timeout = 30000;
           
   HttpWebResponse myHttpResponse = null;
   string response = string.Empty;

   Stream myRequestStream = null;
   Stream baseStream = null;
   try
   {
         myRequestStream = myHttpRequest.GetRequestStream();
         myRequestStream.Write(buff,0,buff.Length);   // Sends the XML to web page - waits for response
                   
         myHttpResponse = (HttpWebResponse)myHttpRequest.GetResponse();  //  reads the response
         baseStream = myHttpResponse.GetResponseStream();
         
         XmlTextReader xmlRdr = new XmlTextReader(baseStream);
               
         xmlRdr.MoveToContent();
         response = HttpUtility.HtmlDecode(xmlRdr.ReadInnerXml());
   }

0
 
LVL 22

Expert Comment

by:_TAD_
ID: 17988309


You will want to use the HttpWebRequest and HttpWebResponse classes to create a proxy that can read the uri streams (which, of course, will be in XML format).

The request (calling function) will look something like:



   byte[] buff = System.Text.Encoding.ASCII.GetBytes(myXML);

   HttpWebRequest myHttpRequest = (HttpWebRequest)HttpWebRequest.Create(<URL>);
   myHttpRequest.Method = "POST";
   myHttpRequest.KeepAlive = false;
   myHttpRequest.ContentType = "application/x-www-form-urlencoded";
   myHttpRequest.ContentLength = buff.Length;
   NetworkCredential cred = new NetworkCredential("user","password","myDomain");;
   CredentialCache credCache = new CredentialCache();
   credCache.Add(new Uri(serviceURI), "Basic", cred);
   myHttpRequest.Credentials = credCache;
   myHttpRequest.Timeout = 30000;
           
   HttpWebResponse myHttpResponse = null;
   string response = string.Empty;

   Stream myRequestStream = null;
   Stream baseStream = null;
   try
   {
         myRequestStream = myHttpRequest.GetRequestStream();
         myRequestStream.Write(buff,0,buff.Length);   // Sends the XML to web page - waits for response
                   
         myHttpResponse = (HttpWebResponse)myHttpRequest.GetResponse();  //  reads the response
         baseStream = myHttpResponse.GetResponseStream();
         
         XmlTextReader xmlRdr = new XmlTextReader(baseStream);
               
         xmlRdr.MoveToContent();
         response = HttpUtility.HtmlDecode(xmlRdr.ReadInnerXml());
   }

0
 
LVL 22

Accepted Solution

by:
_TAD_ earned 500 total points
ID: 17988310


You will want to use the HttpWebRequest and HttpWebResponse classes to create a proxy that can read the uri streams (which, of course, will be in XML format).

The request (calling function) will look something like:



   byte[] buff = System.Text.Encoding.ASCII.GetBytes(myXML);

   HttpWebRequest myHttpRequest = (HttpWebRequest)HttpWebRequest.Create(<URL>);
   myHttpRequest.Method = "POST";
   myHttpRequest.KeepAlive = false;
   myHttpRequest.ContentType = "application/x-www-form-urlencoded";
   myHttpRequest.ContentLength = buff.Length;
   NetworkCredential cred = new NetworkCredential("user","password","myDomain");;
   CredentialCache credCache = new CredentialCache();
   credCache.Add(new Uri(serviceURI), "Basic", cred);
   myHttpRequest.Credentials = credCache;
   myHttpRequest.Timeout = 30000;
           
   HttpWebResponse myHttpResponse = null;
   string response = string.Empty;

   Stream myRequestStream = null;
   Stream baseStream = null;
   try
   {
         myRequestStream = myHttpRequest.GetRequestStream();
         myRequestStream.Write(buff,0,buff.Length);   // Sends the XML to web page - waits for response
                   
         myHttpResponse = (HttpWebResponse)myHttpRequest.GetResponse();  //  reads the response
         baseStream = myHttpResponse.GetResponseStream();
         
         XmlTextReader xmlRdr = new XmlTextReader(baseStream);
               
         xmlRdr.MoveToContent();
         response = HttpUtility.HtmlDecode(xmlRdr.ReadInnerXml());
   }

0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
how to hide hide popup page refresh second time? 10 143
JSON error 4 71
RegEx Help - open to other simple suggestions 8 58
Hide Table in merge 3 32
I recently decide that I needed a way to make my pages scream on the net.   While searching around how I can accomplish this I stumbled across a great article that stated "minimize the server requests." I got to thinking, hey, I use more than one…
I have helped a lot of people on EE with their coding sources and have enjoyed near about every minute of it. Sometimes it can get a little tedious but it is always a challenge and the one thing that I always say is:  The Exchange of information …
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question