Вы должны получить файл в виде потока, открыть его с помощью open xml sdk (у вас должен быть Open XML SDK: здесь ).
Если вы не знакомы с Open XML SDK, вы также можете посмотреть пост в блоге здесь , который также взят из блога, на который вы уже ссылались.
Ниже приведен пример кода, как я создаю отчет и отправляю клиенту, используя Open XML SDK с ASP.NET. Я надеюсь, что это может быть полезно.
public void SendReport()
{
using (Stream stream = GetReportStream())
{
stream.Position = 0;
byte[] buffer = new byte[(int)stream.Length];
stream.Read(buffer, 0, (int)stream.Length);
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.Buffer = true;
System.Web.HttpContext.Current.Response.AddHeader("Content-Type", "application/pptx");
System.Web.HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=Report;");
System.Web.HttpContext.Current.Response.BinaryWrite(buffer);
System.Web.HttpContext.Current.Response.Flush();
System.Web.HttpContext.Current.Response.Close();
}
}
private Stream GetReportStream()
{
MemoryStream stream = new MemoryStream();
using (FileStream file = File.Open(@"TemplateFileLocation", FileMode.Open))
{
byte[] buffer = new byte[file.Length];
file.Read(buffer, 0, (int)file.Length);
stream.Write(buffer, 0, buffer.Length);
}
using (PresentationDocument presentationDocument = PresentationDocument.Open(stream, true))
{
// Doing manipulations explained in your reference document link.
presentationDocument.PresentationPart.Presentation.Save();
}
return stream;
}
Не забудьте скачать и проверить все решение по ссылке, на которую вы ссылались.