附加字符串会使第一行增加两次



我正在生成一个产品订单列表,然后通过邮件发送给员工。邮件正文(html(包含一个格式化的数量和文章编号字符串。字符串是这样生成的:

if (order.AssemblyOrderID == assemblyOrderIDs[assemblyOrderIDs.Count - 1])
{
orderBody += order.OrderQuantity + "x " + order.Article.Article_Number + "<br />";
objMM.Body += orderBody;
}   

问题:此字符串的第一行生成两次。我逐步完成了我的代码,但根据调试器的说法,它正在按预期工作。

邮件显示如下字符串:

2x 12345
2x 12345
9x 99999

有什么建议吗?

邮件正文变为双重附加:

// lets assume both orderBody and mail body is empty here.
orderBody += ....; // Here order body becomes 2x 12345<br/>
objMM.Body += orderBody; // here objMM.body becomes 2x 12345

在下一个转弯处,您再次将其附加到orderBody,并将orderBody再次附加到邮件正文:

orderBody += ....; // Here order body becomes "2x 12345<br/>2x 99999<br/>"
objMM.Body += orderBody; // here objMM.body is "2x 12345<br/>" already and
// it becomes "2x 12345<br/>" + "2x 12345<br/>2x 99999<br/>"

不要双重追加。在循环外分配objMM.Body,或者执行以下操作:

if (order.AssemblyOrderID == assemblyOrderIDs[assemblyOrderIDs.Count - 1])
{
orderBody += order.OrderQuantity + "x " + order.Article.Article_Number + "<br />";
objMM.Body = orderBody;
}   

最新更新