我在服務器上創建一個控制檯應用程序,該應用程序會將MS Excel文件(包含顏色和格式)的內容複製到電子郵件的正文中。我不是試圖附上工作表,而只是複製它,以便業務用戶在他們的手機/平板電腦/設備上查看電子郵件時,他們不需要安裝Excel應用程序來查看報告。如何使用格式將Excel工作表複製到電子郵件正文?
我需要幫助確定如何複製和顯示電子郵件正文中的工作表。
目前,我有以下,但它僅複製實際的字符串數據,沒有任何漂亮的格式化:
public static void pullDataFromExcel(string fileName)
{
string mySheetPath = @"C:\Users\lmilligan\Downloads\";
MSExcel.Application excelApp = new MSExcel.Application();
excelApp.DisplayAlerts = false;
excelApp.Visible = true;
MSExcel.Workbook book = excelApp.Workbooks.Open(mySheetPath + fileName);
MSExcel.Worksheet sheet = book.ActiveSheet;
book.RefreshAll();
var data = "";
foreach (MSExcel.Range row in sheet.UsedRange.Rows)
{
foreach (MSExcel.Range cell in row.Columns)
{
data += cell.Value + " ";
}
data += "\n";
}
MSOutlook.Application olApp = new MSOutlook.Application();
MailMessage mail = new MailMessage("[email protected]", "[email protected]");
SmtpClient client = new SmtpClient();
client.Port = 25;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.Host = "mail.myServer.net";
mail.Subject = "AutoMailer test";
mail.Body = Convert.ToString(sheet);
client.Send(mail);
book.Save();
book.Close();
excelApp.Quit();
}
static void Main(string[] args)
{
pullDataFromExcel("mySheet.xlsx");
}
是否需要位於正文中?它可能更多_user friendly_作爲附件? – christiandev
您可以在HTML表格中顯示數據以獲得類似於Excel的格式。 – markpsmith
是Christiandev它必須位於主體中,以便業務用戶在移動設備上查看報告時,不需要安裝Excel。 –