I am using this code to send email
var message = new MailMessage("abc@somedomain.com", "administrator@anotherdomain.com");
message.Subject = "Testing";
message.IsBodyHtml = true;
message.Body = "<html><body>IMAGINE A LOT OF HTML CODING HERE</body></html>";
Run Code Online (Sandbox Code Playgroud)
问题是我只是复制了我想要作为电子邮件发送的HTML,现在我必须在一行中制作整个HTML代码!否则就是说";" 失踪!我的意思是,现在我不能继续删除空格并把它全部放在一行!这是我需要发送的HTML代码太多了.我该怎么办 ?:/
[编辑]另一个问题:这是否有限制message.Body?就像限制HTML可以插入多少?
Jon*_*eet 10
Dan提供了一个选项 - 逐字字符串文字 - 但我想建议您将数据移动到单独的HTML文件中.将它作为资源嵌入到程序集中,然后可以在执行时加载它.
通过这种方式,您将获得HTML语法高亮显示,您不会使用大量数据混乱您的代码,并且您可以随时轻松地编辑它,而不必担心双引号(这需要是双引号)在逐字字符串文字中加倍,或在常规字符串文字中使用反斜杠进行转义).
缺点是将用户数据放在HTML中变得更加困难 - 为此,您可能需要考虑使用模板系统; 或者只是手写(html = html.Replace("$user", name))或可用的各种模板库之一.当然,在适当的时候小心使用HTML转义.
你可以使用这个@角色:
message.Body = @"
<html>
<body>
IMAGINE A LOT OF HTML CODING HERE
</body>
</html>";
Run Code Online (Sandbox Code Playgroud)
如果您有一个小的HTML标记/想要一个快速而肮脏的解决方案,这可以正常工作.对于生产代码,我建议您使用Jon Skeet建议的内容,保留单独的HTML文件.
| 归档时间: |
|
| 查看次数: |
163 次 |
| 最近记录: |