2014-02-19 286 views
0

我正在創建一個Web應用程序,它將允許我的用戶編輯像gridview這樣的excel。查看Excel文件,然後通過電子郵件發送

我整合了兩個按鈕,它們會發送附帶excel文件的電子郵件以及一個顯示正在發送的excel文件的按鈕。

兩者的問題是,在請求只查看它在本地顯示正常的文件時,但是當推送到我的web服務器時,它根本不起作用。

使用另一個按鈕將文件作爲附件發送到電子郵件中,它不會附加,但會發送電子郵件。

這裏是發送電子郵件的代碼:

try 
      { 
       const string attachment = "summary.xlsx"; 
       var mail = new MailMessage(); 

       mail.To.Add("[email protected]"); 
       mail.From = new MailAddress("[email protected]"); 
       mail.Subject = "SummarySpreadsheet " + DateTime.Now.ToString("MM-dd-yyyy"); 
       mail.Body = "Hello Everyone," + "\n" + "\n" + 
          "Attached is the Spreadsheet for your review." + "\n" + "\n" + 
          "Thank you!" + "\n" + "\n"; 
       mail.Attachments.Add(new Attachment(Server.MapPath("//testserver/apps/testApp/Daily/summary.xlsx"))); 


       var smtpClient = new SmtpClient("test.test.com"); //this is fake 
       smtpClient.Send(mail); 
       Response.Write("Email Sent Successfully!"); 
      } 
      catch (Exception ex) 
      { 
       Response.Write("Could not send the email - error" + ex.Message); 
      } 
     } 

這裏是我使用的代碼只是查看電子表格:

System.Diagnostics.Process.Start(@"\\testserver\apps\testApp\Daily\summary.xlsx"); 

我已經做了我的研究,發現很多方法發送附件的電子郵件,他們在本地工作,但推送到我的服務器沒有任何作用。我已經複製DLL的結束,並確保一切都是一致的,但仍然沒有改變。

對此的任何幫助將是偉大的。

謝謝

回答

0

能夠解決我的問題。

  1. 在問候中打開該文件的客戶端,我不得不使用此代碼(我要去一下服務器端):location.href='_summary.xlsx';return false;

  2. ,並在問候我用streamFile.OpenRead("file location")的收發郵件讓它發送正確。

相關問題