2010-04-21 7 views
2

Je télécharge un fichier xml dans asp.net. ce que je veux faire est de lire le fichier et le convertir en xmldoc et l'envoyer à un webservice sans sauvegarder le fichier xml dans le serveur. Est-ce possible? Si oui, quelqu'un peut-il m'aider avec le code? Le code est écrit i tant que ci-dessousLire le fichier xml dans le serveur sans l'enregistrer

HttpPostedFile myFile = filMyFile.PostedFile; 
int nFileLen = myFile.ContentLength; 
if (nFileLen > 0) 
{ 
byte[] myData = new byte[nFileLen]; 
myFile.InputStream.Read(myData, 0, nFileLen); 
} 

Répondre

6

Vous pouvez le charger à l'aide du flux d'entrée du fichier affiché, comme celui-ci:

XmlDocument doc = new XmlDocument(); 
doc.Load(myFile.InputStream); 

Il utilise le .Load(Stream) overload of XmlDocument. À l'aide du contrôle FileUpload d'ASP.NET <asp:FileUpload>, vous pouvez charger le fichier téléchargé de la manière suivante:

+0

Merci Nick ça a marché – SSK

0

Montre le chargement d'un XmlDocument et d'un XDocument.

using (MemoryStream stream = new MemoryStream(fileUpload.FileBytes)) 
{ 
    XmlDocument document = new XmlDocument(); 
    document.Load(stream); 

    stream.Position = 0; // return to beginning for demo 
    XDocument xdocument = XDocument.Load(XmlReader.Create(stream)); 
} 
Questions connexes