我正在實施一個應用程序,該應用程序向公司的員工發送電子郵件。該電子郵件包含一個指向共享服務器文件夾上的pdf文件的超鏈接。如何通過C#中的電子郵件發送本地鏈接(共享服務器鏈接)?
服務器文件夾的URL示例:
\\server_name\folder_parent\folder_child\file.pdf
在我的C#代碼,我用一個字符串包含像下面
private static string getHTML(DataTable dt) {
string myBuilder = "";
myBuilder += "<table id='customers' style='font-family: 'Trebuchet MS', Arial, Helvetica, sans-serif; width: 100%; border-collapse: collapse;'";
myBuilder += "<tr>";
foreach (DataColumn myColumn in dt.Columns)
{
myBuilder += "<th style='font-size: 1.1em; border: 1px solid #98bf21; padding: 5px 7px 4px 7px;background-color: #A7C942;'>";
myBuilder += myColumn.ColumnName;
myBuilder += "</th>";
}
myBuilder += "</tr>";
int count = 0;
foreach (DataRow myRow in dt.Rows)
{
myBuilder += "<tr>";
if (count % 2 == 0)
{
foreach (DataColumn myColumn in dt.Columns)
{
myBuilder += "<td style='font-size: 1em; border: 1px solid #98bf21; padding: 3px 7px 2px 7px;'>";
if (myColumn.ColumnName == "Address")
{
myBuilder += "<a href='" + myRow[myColumn.ColumnName].ToString() + "' style='display:block;'>Link!</a>";
}
else
{
myBuilder += myRow[myColumn.ColumnName].ToString();
}
myBuilder += "</td>";
}
}
else
{
foreach (DataColumn myColumn in dt.Columns)
{
myBuilder += "<td style='font-size: 1em; border: 1px solid #98bf21; padding: 3px 7px 2px 7px; color: #000000; background-color: #EAF2D3;'>";
if (myColumn.ColumnName == "Address")
{
myBuilder += "<a href='" + myRow[myColumn.ColumnName].ToString() + "' style='display:block;'>Link!</a>";
}
else
{
myBuilder += myRow[myColumn.ColumnName].ToString();
}
myBuilder += "</td>";
}
}
count++;
myBuilder += "</tr>";
}
myBuilder += "</table>";
return myBuilder;
}
此代碼從數據表,並顯示獲取數據的代碼的html代碼它就像一個HTML代碼表。
這是DataTable的
dt.Rows.Add("bala", "24", "http://www.google.com", "999444444");
dt.Rows.Add("chendur", "23", "http://www.facebook.com", "9999999999");
dt.Rows.Add("chchandru", "22", @"file:///\\server_name\folderA\folderB\file.pdf", "888888888");
數據所以,當我打開鉻(mail.google.com)的電子郵件中,鏈接包含鏈路本地沒有工作,沒有在該文本超鏈接沒有。
我嘗試使用http鏈接,如谷歌或臉書和工作,但文件鏈接沒有從你可以從下面的圖片看到。
關於file:///
,我試着寫一個HTML文件和工作。
<td><a href="file:///\\server_name\folderA\folderB\file.pdf">LINK</a></td>
我讀過很多關於這方面的文章,他們說「安全問題」。
事情是這個應用程序只在同一家公司的員工之間發送電子郵件,他們使用共享服務器使用互聯網和發送電子郵件。 (公司內的所有電腦連接到同一臺服務器)。
那麼是否有任何可能的方式發送本地鏈接像這種情況?如果沒有,我是否有任何可能的解決方案來解決這種情況?要求只是「你點擊了你的電子郵件中的一個鏈接,它會自動在本地鏈接上打開一個文件。」
P/S:當然,我得到這個
MailMessage completeMessage = new MailMessage(From, To, Subject, mailBody);
completeMessage.IsBodyHtml = true;
爲該文件夾創建網絡共享而不是使用服務器路徑 – Gregg
@Gregg:您能否給我更多詳細信息? –
[Windows共享文件夾的URL]的可能重複(http://stackoverflow.com/questions/5796215/an-url-to-a-windows-shared-folder) –