Updating an XML file from a URL

G

Guest

Hi,

I have an XML file at http://localhost/test.xml that I want to read and then
update.
I can get and read the file no problem with GetResponseStream etc...

The code (see 2 examples below) I am using to write the new xml to that same
location does not give me any error but the file never updates. When I open
the file from XMLSPY with Open URL ... I can read and update it.

Thanks for your help.

First example

Dim myRequest As HttpWebRequest =
CType(WebRequest.Create("http://localhost/test.xml"), HttpWebRequest)

myRequest.Method = "POST"
myRequest.PreAuthenticate = True
Dim networkCredential As New NetworkCredential("myName", "MyPassword",
"MyDomain")

myRequest.Credentials = networkCredential

' this one doesn't work either myRequest.ContentType =
"application/x-www-form-urlencoded"
myRequest.ContentType = "text/xml"

Dim newStream As Stream = myRequest.GetRequestStream()
Dim sw As New StreamWriter(newStream)
sw.Write("<test></test>")
sw.Flush()
sw.Close()

Second example

Dim myRequest As WebRequest =
HttpWebRequest.Create("http://localhost/test.xml")
myRequest.Method = "POST"
myRequest.ContentType = "text/xml"
myRequest.PreAuthenticate = True
Dim networkCredential As New NetworkCredential("myName", "myPassword",
"MyDomain")

myRequest.Credentials = networkCredential

Dim postData As String = "<test></test>"
Dim encoder As New ASCIIEncoding
Dim byteArray As Byte() = encoder.GetBytes(postData)
myRequest.ContentLength = byteArray.Length

Dim readStream As Stream = myRequest.GetRequestStream()

readStream.Write(byteArray, 0, postData.Length)
readStream.Close()
 
K

Kevin Spencer

Try writing to a file location on the server instead of the RequestStream
coming from the browser.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
Ambiguity has a certain quality to it.
 
G

Guest

I can try but I was testing this because I'm planning to access xml files
stored in a sharepoint document library and the link to those isn't a file
location.
 
K

Kevin Spencer

Well, the Request Stream isn't a file location either. Worse, you can't
write to it. It's like an email that you receive. You can't write a reply to
an email by opening the email and writing into it. You have to send an email
reply. Request is one way. So is Response (the other way). If these files
are in a SharePoint document library, I suggest you use the SharePoint
services API to replace them. Otherwise, you'll be in worse trouble than you
are now, because you'll break your SharePoint Services.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
Ambiguity has a certain quality to it.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,578
Members
45,052
Latest member
LucyCarper

Latest Threads

Top