2009-08-25 117 views
2

我正在使用SubVersion和TRAC來處理我正在處理的C#項目,並且我的TRAC系統設置中有一個可用於創建票據的電子郵件地址。在我的程序中,我在程序中添加了一個簡單的「反饋」按鈕,該按鈕向此地址發送電子郵件。要打開電子郵件,我只是「開始」一個mailto鏈接,如下所示。強制郵件客戶端通過mailto使用文本而不是HTML:

System.Reflection.Assembly assem = System.Reflection.Assembly.GetExecutingAssembly(); 
string ver = assem.GetName().Version.ToString(); 
System.Diagnostics.Process.Start("mailto:[email protected]?subject=<Provide a title for your feedback here>&body=< Describe the problem you are having or enhancement you would like to suggest here. Please be as descriptive as you can, and if possible list out the actions that will replicate the problem >%0D%0A%0D%0A%0D%0AVersion: "+ver); 

我遇到的問題是,如果用戶使用的是Outlook和他們的Outlook的副本設置爲HTML時生成最終有一堆的HTML代碼,我要清理票。有什麼方法可以通知客戶正在處理它的任何郵件發送電子郵件作爲文本而不是HTML嗎?

回答

3

在客戶端沒有什麼可以做的(除了教育) - mailto沒有任何東西可以控制客戶端程序。坦率地說,隨着基於網絡的電子郵件的激增,我認爲mailto正在顯示它的年齡。

展望應該send a mime/multipart message,純文本和HTML部分。我想你可以擴大或補丁Trac只抓住text/plain部分。

否則,只需在您的應用程序中創建一個表單來捕獲電子郵件信息。同樣,如果有人使用Hotmail或Gmail,mailto可能無法正常工作(或者打開未配置的Outlook Express,他們會盡職地輸入電子郵件並按發送,但只有它不會去任何地方,因爲沒有SMTP服務器被配置 - 所以它會在發件箱中衰退多年,但不是他們會注意到,但...)。

+0

是的,這就是我所害怕的。 。哦,非常感謝答案。 – 2009-08-25 17:50:32

相關問題