public override void ExecuteResult(ControllerContext context) { byte[] data = new CsvFileCreator().AsBytes(ModelListing); var fileResult = new FileContentResult(data, "text/csv") { FileDownloadName = "CsvFile.csv" }; fileResult.ExecuteResult(context); }
public override void ExecuteResult(ControllerContext context) { var xmlSerializerNamespaces = new XmlSerializerNamespaces(); xmlSerializerNamespaces.Add(string.Empty, string.Empty); var xmlWriterSettings = new XmlWriterSettings(); xmlWriterSettings.Indent = false; xmlWriterSettings.OmitXmlDeclaration = true; var xmlSerializer = new XmlSerializer(typeof (Projects)); string xml; using (var textWriter = new StringWriter()) { using (XmlWriter xmlWriter = XmlWriter.Create(textWriter, xmlWriterSettings)) { xmlSerializer.Serialize(xmlWriter, _model, xmlSerializerNamespaces); } xml = textWriter.ToString(); } var fileContentResult = new FileContentResult(Encoding.UTF8.GetBytes(xml), "text/xml"); fileContentResult.FileDownloadName = "status.xml"; fileContentResult.ExecuteResult(context); }
public override void ExecuteResult(ControllerContext context) { var result = new FileContentResult( _chart.GetBytes(_imageType), "image/" + _imageType); result.ExecuteResult(context); }
/// <summary> /// 导出文件 /// </summary> /// <param name="fileContents">字节数组</param> /// <param name="outputName">要输出的文件名称,含扩展名</param> public void OutPut(byte[] fileContents, string outputName) { var fileResult = new FileContentResult(fileContents, MimeMapping.GetMimeMapping(outputName)) { FileDownloadName = outputName }; fileResult.ExecuteResult(this.context); }
public override void ExecuteResult(ControllerContext context) { //excel -> icon-pageexcel //xml -> icon-pagecode //csv -> icon-pageattach FileContentResult contentResult = null; string jsonData = JSON.Serialize(data); if (exportFormat == "icon-pagecode") jsonData = jsonData.Replace("&", "&").Replace("<", "<").Replace(">", ">"); SubmitHandler handler = new SubmitHandler(jsonData); XmlNode xmlData = handler.Xml; switch (exportFormat) { case "icon-pageexcel": XslCompiledTransform xtExcel = new XslCompiledTransform(); xtExcel.Load(HttpContext.Current.Server.MapPath("~/Content/ExportTemplate/Excel.xsl")); StringBuilder resultExcelString = new StringBuilder(); XmlWriter excelWriter = XmlWriter.Create(resultExcelString); xtExcel.Transform(xmlData, excelWriter); contentResult = new FileContentResult(Encoding.UTF8.GetBytes(resultExcelString.ToString()), "application/vnd.ms-excel"); contentResult.FileDownloadName = DateTime.Now.ToString() + ".xls"; break; case "icon-pagecode": contentResult = new FileContentResult(Encoding.UTF8.GetBytes(xmlData.OuterXml), "application/xml"); contentResult.FileDownloadName = DateTime.Now.ToString() + ".xml"; break; case "icon-pageattach": XslCompiledTransform xtCsv = new XslCompiledTransform(); xtCsv.Load(HttpContext.Current.Server.MapPath("~/Content/ExportTemplate/Csv.xsl")); StringBuilder resultCsvString = new StringBuilder(); XmlWriterSettings settings = new XmlWriterSettings(); settings.OmitXmlDeclaration = true; settings.ConformanceLevel = ConformanceLevel.Fragment; settings.CloseOutput = false; XmlWriter csvWriter = XmlWriter.Create(resultCsvString, settings); xtCsv.Transform(xmlData, csvWriter); contentResult = new FileContentResult(Encoding.UTF8.GetBytes(resultCsvString.ToString()), "application/octet-stream"); contentResult.FileDownloadName = DateTime.Now.ToString() + ".csv"; break; default: break; } if(contentResult != null) contentResult.ExecuteResult(context); }