我正在从Wrox初学者ASP.Net 4.0学习ASP.Net。在这里,我将从我的网站发送邮件到我的邮箱。为此,我在App_Data文件夹中创建了一个Text文件,并编写了一些内容,如:
Name: ##Name##
E-mail address:##Email##
Comments: ##Body##
在提交表格时,我将以下内容替换为以下内容:
string filename = Server.MapPath("~/App_Data/ContactForm.txt");
string mailBody = File.ReadAllText(filename);
mailBody = mailBody.Replace("##Name##", Name.Text);
mailBody = mailBody.Replace("##Email##", EmailAddress.Text);
mailBody = mailBody.Replace("##Comments##", Comments.Text);
并将mailBody发送到我的邮箱。我在邮件中的输出如下:
Name: Andrew Thomas
E-mail address: andrew@voxcode.com
Comments: Its a great Site. But would like to see more of Spanish songs.
为什么我的内容未在模板文本文件中对齐。除了姓名,电子邮件和评论之外,我还有很多领域。所有人都非常不一致。在将它们发送到我的邮件之前,我该怎么做才能使它们对齐。我期待我的邮件:
Name: Andrew Thomas
E-mail address: andrew@voxcode.com
Comments: Its a great Site. But would like to see more of Spanish songs.
我不确定CSS是否可以提供帮助。
感谢。
答案 0 :(得分:1)
如果您想要完美对齐,我建议您在消息中使用表格:
<table border="0">
<tr>
<td>
Name:</td><td>##Name##</td>
</tr>
<tr><td>
E-mail address:</td></td>##Email##</td>
</tr>
<tr><td>
Comments:</td><td>##Comments##</td>
</tr>
</table>
示例:
MailMessage mm = new MailMessage();
string filename = Server.MapPath("~/App_Data/ContactForm.txt");
string mailBody = File.ReadAllText(filename);
mailBody = mailBody.Replace("##Name##", Name.Text);
mailBody = mailBody.Replace("##Email##", EmailAddress.Text);
mailBody = mailBody.Replace("##Comments##", Comments.Text);
mm.Body=mailBody;
mm.IsBodyHtml=true;
答案 1 :(得分:0)
我怀疑您的模板包含标签,当您阅读它时,它们会被转换为空格。检查原始文件只包含空格或制表符。