2013-07-05 91 views
1

我需要將一個word文檔附加到電子郵件中。將Word文檔附加爲附件 - 路徑規範ASP.NET MVC 3

該文件被存儲在該解決方案中,被稱爲「附件」

問題

我不知道我需要以Word文檔附加到電子郵件使用什麼路徑文件夾中也想知道我是否正確附加它。

這裏是我正在做它:

string fileName = "~/Attachments/worddocument.doc"; 
MailMessage mail = new MailMessage 
    { 
     Sender = new MailAddress(this.SenderAddress, this.SenderName), 
     From = new MailAddress(this.FromAddress, this.FromName), 
     ReplyToList = { new MailAddress(this.ReplyToAddress, this.ReplyToName) }, 
     IsBodyHtml = this.isBodyHtml, 
     Subject = this.UserSubject, 
     Attachments.Add(new Attachment(fileName, MediaTypeNames.Application.Octet)); 
    }; 

那如何看?我是否正確指定路徑?

感謝

+0

我們怎麼知道?它工作嗎?如果不是,那麼錯誤是什麼? – zmbq

+0

我現在沒有數據訪問權限,所以我現在無法調試它。我所問的只是我正確指定了路徑。簡單的問題還沒有我可以在MSDN上找到的示例。 – Slinky

+0

我給你的唯一答案是:也許吧。這可能是一條合法的道路,但我不知道它是否是正確的合法道路。 – zmbq

回答

1

Attachment期望一個絕對路徑。

您可以將虛擬路徑轉換爲絕對路徑與

var absolutePath = Server.MapPath("~/Attachments/worddocument.doc") 

而且隨着

Attachments.Add(new Attachment(absolutePath, MediaTypeNames.Application.Octet)); 

如果你想檢查是否在虛擬目錄中的文件存在,則使用

將其固定
if (File.Exists(absolutePath)) 
... 
+0

Perfect中只有一個參考文件夾的正確方法。謝謝 – Slinky