Scrivere in file xml

mercoledì 10 novembre 2010 - 09.42
Tag Elenco Tags  VB.NET  |  Internet explorer 8.0

michela85 Profilo | Newbie

Buongiorno a tutti!

Premetto che conosco poco l'asp.net.
Avrei bisogno di creare un file xml con dati presi da database. Stavo facendo qualche prova preliminare e ho preso spunto da alcuni tutorial che ho trovato su questo sito.

nella pagina prova.aspx ho messo questo codice

<%@ Page Language="VB" CodeFile="prova.aspx.vb" %>

nella pagina prova.aspx.vb invece ho messo questo codice:

Option Explicit On Option Strict On Imports System Imports System.IO Imports System.Xml Partial Class new_Portale_ebay2 Inherits System.Web.UI.Page Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim path As String = "userInfo.xml" 'istanzio il documento Dim Doc As New XmlDocument() 'lo carico in memoria Doc.Load(path) 'recupero il nodo root Dim element As XmlElement = Doc.DocumentElement 'recupero il valore all'interno del primo figlio dell'elemento root Dim NodeCap As XmlNode Dim node2 As XmlNode For Each node2 In element.ChildNodes If node2.Name.Equals("Indirizzo") Then 'creo il nodo NodeCap = Doc.CreateNode(XmlNodeType.Element, "CAP", "") 'imposto il valore NodeCap.InnerText = "00100" 'l'aggiungo al nodo indirizzo node2.AppendChild(NodeCap) 'salvo le modifiche Doc.Save(path) End If Next End Sub End Class

ma mi dà l'errore di "impossibile visualizzare la pagina"

Non riesco a capire dove sta l'errore....

luigidibiasi Profilo | Guru

Avvia il sito in debug-mode e lo trova direttamente WebDeveloper...
Luigi Di Biasi


http://www.dibiasi.it/
http://netsell.dibiasi.it - ecomm software -
http://blogs.dotnethell.it/luigidibiasi/

michela85 Profilo | Newbie

L'errore me lo dà su questo comando

Doc.Load(Server.MapPath("~/App_Data/userinfo.xml"))

con filezilla ho impostato i permessi della cartella a 777, ma niente.... non riesco a capire....

sankyu Profilo | Senior Member

Posta il codice aggiornato; hai completo accesso alla cartella?? sul pc di sviluppo funziona??
Consulente e Sviluppatore .net in ambito finanziario
Dai un occhio al mio blog potrebbe tornarti utile
http://dotnetmemo.blogspot.com

michela85 Profilo | Newbie

... scusa il ritardo della risposta ma sono stata malata ...
allora, ho messo tutto in una pagina aspx:

<%@ Page Language="vb" Debug="true" %> <%@ Import Namespace="System.XML" %> <%@ Import Namespace="System.Data" %> <html> <head> </head> <body> <asp:Label ID="prova" runat="server" Text="" Visible="true"></asp:Label> </body> </html> <script language="vb" runat="server"> Sub Page_Load(ByVal Sender As Object, ByVal E As EventArgs) prova.text="ciao" Dim path As String = Server.MapPath("~/App_Data/userinfo.xml") 'istanzio il documento Dim Doc As New XmlDocument() 'lo carico in memoria Doc.Load(path) 'recupero il nodo root Dim element As XmlElement = Doc.DocumentElement 'recupero il valore all'interno del primo figlio dell'elemento root Dim NodeCap As XmlNode Dim node2 As XmlNode For Each node2 In element.ChildNodes If node2.Name.Equals("Indirizzo") Then 'creo il nodo NodeCap = Doc.CreateNode(XmlNodeType.Element, "CAP", "") 'imposto il valore NodeCap.InnerText = "00100" 'l'aggiungo al nodo indirizzo node2.AppendChild(NodeCap) 'salvo le modifiche Doc.Save(path) End If Next End sub </script>

Tramite filezilla ho impostato i permessi della cartella App_Data e di file e sottocartelle a 777. Mi viene restituito il seguente messaggio:

Comando: CWD /miosito/App_Data
Risposta: 250 CWD command successful.
Comando: PWD
Risposta: 257 "/miosito/App_Data" is current directory.
Comando: SITE CHMOD 777 userInfo.xml
Risposta: 500 'SITE CHMOD 777 userInfo.xml': command not understood

In locale, purtroppo, non posso testarlo

sankyu Profilo | Senior Member

suppongo che il server su cui gira il tutto sia Windows giusto? se si non sono sicuro che filezilla riesca ad interpretare CHMOD su Win essendo questo un comando linux

Consulente e Sviluppatore .net in ambito finanziario
Dai un occhio al mio blog potrebbe tornarti utile
http://dotnetmemo.blogspot.com

michela85 Profilo | Newbie

Si, è windows.... come posso fare a modificare gli accessi allora?

sankyu Profilo | Senior Member

che accesso hai al server? puoi accedere con desktop remoto o comunque hai accesso completo oppure è un hosting condiviso? nel primo caso segui questa guida o cercane altre da google
http://www.pctipsbox.com/setting-file-and-folder-security-in-windows-xp/
in caso contrario probabilmente il tuo provider di hosting ha vietato l'upload di file diversi da .mdf sulla cartella app_data quindi o chiedi a loro di cambiarti i permessi oppure metti i file in un altra cartella su cui puoi gestire i permessi magari usando il web.config come in questa guida
http://support.microsoft.com/kb/316871 anche per questo ci sono altri milioni di guide io ti ho messo quella di microsoft ma se usi google ne trovi a chili

Consulente e Sviluppatore .net in ambito finanziario
Dai un occhio al mio blog potrebbe tornarti utile
http://dotnetmemo.blogspot.com
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5