我正在使用“共享”通过电子邮件发送文本(字符串)。
我共享的数据是这样创建的:
string data = "Log Data\n" + "========\n";
data += "Log Type : " + log.LogType.ToString() + "\n";
data += "Date/Time: " + log.TimeStamp.ToString( "MM/dd/yy - HH:mm:ss" ) + "\n";
data += "Result: " + log.Result.ToString() + "\n";
data += "Value1: " + log.Value1 + " Value2: " + log.Value2 + "\n";
data += "Note: " + log.Note + "\n\n";
数据已准备好并通过电子邮件发送。但是,在我发送(通过 Windows 8 邮件程序)或接收方 GMail 之前,“\n”都没有被正确解释。
发送端呈现的数据如下所示:
Log Data ======== Log Type : ToDo Date/Time: 06/05/12 - 08:00:00 Result: Normal Value1: 170 Value2: 0 Note: note 1
ShareTextHandler 是这样的:
数据请求请求 = e.Request;
request.Data.Properties.Title = "Share Data: ";
request.Data.Properties.Description = "Send Data to an email address";
request.Data.SetText( data );
Windows 8 中的“\n”是否已更改?或者 SetText 会做些什么来删除它?
艾坦B
更新....
你好,
试图用 HTML 做到这一点:
用 HTML 尝试了一些测试数据,如下所示: private string PrepareShareData() { string CR = System.Environment.NewLine; 字符串数据 = string.Empty;
data += "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Final//EN\">" + CR;
data += "<html>" + CR;
data += "<body>" + CR;
data += "<p>" + CR;
data += "Log Data" + "<br/>" + CR;
data += "========" + "<br/>" + CR;
data += "Line 1" + "<br/>" + CR;
data += "Line 2" + "<br/>" + CR;
data += "<p>" + CR;
data += "</body>" + CR;
data += "</html>" + CR;
return data;
}
不工作...
也试过:
private string PrepareShareData()
{
string CR = System.Environment.NewLine;
string data = string.Empty;
data += "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Final//EN\">";
data += "<html>";
data += "<body>";
data += "<p>";
data += "Log Data" + "<br/>";
data += "========" + "<br/>";
data += "Line 1" + "<br/>";
data += "Line 2" + "<br/>";
data += "<p>";
data += "</body>";
data += "</html>";
return data;
}
也没有工作....
我确实用记事本创建了一个 .HTML 文件,效果很好:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Final//EN">
<html>
<body>
<p>
Log Data<br/>
========<br/>
Line 1<br/>
Line 2<br/>
</p>
</body>
</html>
HTML 是否也存在邮件问题,或者我的 HTML 错误?
谢谢, EitanB