嗨,我在这里做了一个噩梦!
我正在尝试使用 page.rendercontrol 和 htmltextwriter 将 web 表单输出到 html,但它会导致一封空白电子邮件。
代码:
StringBuilder sb = new StringBuilder();
StringWriter sw = new StringWriter(sb);
HtmlTextWriter htmlTW = new HtmlTextWriter(sw);
page.RenderControl(htmlTW);
String content = sb.ToString();
MailMessage mail = new MailMessage();
mail.From = new MailAddress("test@test.com");
mail.To.Add("steve@test.com");
mail.IsBodyHtml = true;
mail.Subject = "Test";
mail.Body = content;
SmtpClient smtp = new SmtpClient("1111");
smtp.Send(mail);
Response.Write("Message Sent");
我还通过渲染单个文本框进行了尝试,并得到错误提示它需要在表单标签内(位于母版页上)。
我尝试了此修复:http ://forums.asp.net/p/1016960/1368933.aspx#1368933 并添加:
public override void
VerifyRenderingInServerForm(Control control) { return; }
但现在我得到的错误是:
VerifyRenderingInServerForm(Control)':找不到合适的方法来覆盖
有没有人可以解决这个问题?我要拔头发了!!
谢谢,
史蒂夫