1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
protected void btnExporter_Click(object sender, EventArgs e)
{
ListWorkflow_Module listWfToExport = *je rempli mon objet*
String xmlFormate = ShowXML(Serializer.Serialize<ListWorkflow_Module>(listWfToExport));
// Affichage de l'xml
txtXml.Text = xmlFormate;
// Export du fichier XML
Response.Clear();
Response.AddHeader("content-disposition", String.Format("attachment;filename=ExportRegles_{0}.xml", DateTime.Now));
Response.Buffer = true;
Response.ContentType = "text/xml";
Response.Charset = "";
Response.Cache.SetCacheability(HttpCacheability.NoCache);
EnableViewState = false;
StringWriter oStringWriter = new StringWriter();
HtmlTextWriter oHtmlTextWriter = new HtmlTextWriter(oStringWriter);
oHtmlTextWriter.Write(xmlFormate);
Response.Write(oStringWriter.ToString());
Response.End();
}
private String ShowXML(String PathFile)
{
XmlDocument xmlDoc = new XmlDocument();
string strFilename = PathFile;
xmlDoc.LoadXml(PathFile);
MemoryStream mst = new MemoryStream();
XmlTextWriter writer = new XmlTextWriter(mst, Encoding.UTF8);
writer.Formatting = Formatting.Indented;
xmlDoc.WriteContentTo(writer);
writer.Flush();
//reading the stream
StreamReader sr = new StreamReader(mst);
sr.BaseStream.Seek(0, SeekOrigin.Begin);
string xmlStr = sr.ReadToEnd();
mst.Close();
sr.Close();
writer.Close();
xmlDoc.PreserveWhitespace = true;
xmlDoc.InnerXml = xmlStr;
return xmlDoc.InnerXml;
} |
Partager