我想知道如何在桌子上发送这些信息。这是电子邮件的正文,该应用目前工作正常,只需要将此信息转换为2行表。
email.Body = "Company Name: " + CompanyName.Value + "<br />";
email.Body += "Customer Code: " + ClientCode.Value + "<br />";
email.Body += "Country: " + Country.Value + "<br />";
email.Body += "Your Full Name: " + FullContactName.Value + "<br />";
email.Body += "Position in your Company: " + ContactTitle.Value + "<br />";
email.Body += "Phone Number: " + PhoneNumber.Value + "<br />";
email.Body += "Email Address: " + ContactEmail.Value + "<br />";
我只需要一个简单的2行表,似乎无法自己正确地完成它,我对.net,C#和/或asp都很新,很多!
答案 0 :(得分:3)
我实际上会提出一个建议,即在电子邮件中发送此内容可能不是最好的主意,因为它是纯文本PII,但至于如何:
email.Body = "<table>" +
"<tr>" +
"<td>Company Name</td>" +
"<td>Customer Code</td>" +
"<td>Country</td>" +
"<td>Your Full Name</td>" +
"<td>Position in your Company</td>" +
"<td>Phone Number</td>" +
"<td>Email Address</td>" +
"</tr>" +
"<tr>" +
"<td>" + CompanyName.Value + "</td>" +
"<td>" + ClientCode.Value + "</td>" +
...
"</tr>"
"</table>";
像这样构建它可能是最干净的方式。不确定如何构造Variable.Value,但是如果你可以将它移动到一个对象(即CompanyClient)中,可能值得将这样的东西放到ObjectTypeToTable(obj)方法中,该方法返回一个类似的字符串以减少你需要在将来对某些事情进行故障排除时的代码(如果你在其他方面重复使用该调用,则可以在以后修改单个区域)。
答案 1 :(得分:2)
只需创建一个HTML正文:
email.Body = "<table><tr>"
"<th>Company Name</th>" +
"<th>Customer Code</th>" +
"<th>Country</th>" +
"<th>Your Full Name</th>" +
"<th>Position in your Company</th>" +
"<th>Phone Number</th>" +
"<th>Email Address</th>" +
"<tr/><tr>" +
"<td>" + CompanyName.Value + "</td>" +
"<td>" + ClientCode.Value + "</td>"+
"<td>" + Country.Value + "</td>" +
"<td>" + FullContactName.Value + "</td>" +
"<td>" + ContactTitle.Value + "</td>" +
"<td>" + PhoneNumber.Value + "</td>" +
"<td>" + ContactEmail.Value + "</td>" +
"</tr></table>";
答案 2 :(得分:1)
有一个ASP.NET表控件,您可以与之交互以生成HTML表。你只需使用这样的代码创建它(我可能过度简化):
Table tbl = new Table();
TableRow tr = new TableRow();
TableCell tc = new TableCell();
tc.Text = "Test";
tr.Cells.Add(tc);
tbl.Rows.Add(tr);
这可能比你需要的更多,因为你可以很容易地创建带有字符串的结构,但在路上它可以派上用场。