Example #1
0
        static async Task Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            string      filepath    = AppDomain.CurrentDomain.BaseDirectory + @"Template\Template311.xls";
            MessageFile messageFile = new MessageFile()
            {
                FilePath = filepath,
                FileName = "Template311.xls",
                Message  = "测试"
            };

            await ProcessMessagePdf(messageFile);
        }
Example #2
0
        private static async Task <string> ProcessMessagePdf(MessageFile messageFile)
        {
            PdfConventer _pdfConventer;
            MemoryStream _downloadStream = new MemoryStream();
            var          message         = messageFile.Message;

            if (messageFile.FilePath == null)
            {
                throw new Exception("Send the document with the extension .docx or .xls or .xlsx ");
            }
            var filePath = messageFile.FilePath;
            var fileNameWithoutExtension = Path.GetFileNameWithoutExtension(messageFile.FileName);
            var extension = Path.GetExtension(messageFile.FileName);

            _downloadStream = await ReadFileToMemoryStream(filePath);

            switch (extension)
            {
            case ".xls":
            case ".xlsx":

                _pdfConventer = new XlsxToPdf();
                Console.WriteLine(_pdfConventer.GetType().ToString());
                break;

            case ".docx":
                _pdfConventer = new DocxToPdf();
                Console.WriteLine(_pdfConventer.GetType().ToString());
                break;

            default:
                throw new Exception("There is no such format. Supported Formats:docx,xls,xlsx ");
            }

            // return await SendFilePdf(fileNameWithoutExtension, _pdfConventer, _downloadStream);
            return(await SendFileHtml(fileNameWithoutExtension, _pdfConventer, _downloadStream));
        }