我的页面上有一个转发器,除其他外,其中有一个我在页面事件中写入的FooterTemplate
带有 a的内容。Literal
LoadComplete
FooterTemplate
如下:
<FooterTemplate>
<tr>
<td colspan="3">
</td>
</tr>
<tr>
<td>
</td>
<td>
<b>Total:</b>
</td>
<td align="right">
<asp:Literal runat="server" ID="ltrBasketTotal" />
</td>
</tr>
<tr>
<td>
</td>
<td>
<b>Total inc. VAT:</b>
</td>
<td align="right">
<asp:Literal runat="server" ID="ltrBasketTotalPlusVAT" />
</td>
</tr>
</table>
</FooterTemplate>
我知道我的LoadComplete
方法运行良好,因为我在屏幕上显示了总额和总额加上增值税。在我的PlaceOrder
方法中,我将转发器的内容呈现到流中以包含在电子邮件中:
Using mStream As New System.IO.MemoryStream()
Using writer As New System.IO.StreamWriter(mStream)
Using rptSummaryContentWriter As HtmlTextWriter = New HtmlTextWriter(writer)
rptSummary.RenderControl(rptSummaryContentWriter)
Dim reader As New System.IO.StreamReader(mStream)
reader.BaseStream.Position = 0
customerOrderMail.Body = "Dear " & Session("displayname") & ",<br /><br />Thank you for your order through MyPortal, your reference for this order is " & newQuoteID.ToString() & ". Below is a summary of your order.<br /><br /><br />" & reader.ReadToEnd()
End Using
End Using
End Using
问题是我的电子邮件包含表格中的所有内容,除了总加增值税的最后一行:
有人知道为什么吗?
编辑:
检查我的电子邮件客户端中的来源,我发现我想要的行中的<tr>
and<td>
在那里,但没有别的。就像我过早地从流中读取,但我认为RenderControl
它会在将控制权返回给调用者之后完成?