Добавление строки добавляет первую строку дважды - PullRequest
0 голосов
/ 25 марта 2020

Я создаю список заказов на продукцию, который затем отправляется сотруднику по почте. Тело письма (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

Есть предложения?

1 Ответ

3 голосов
/ 25 марта 2020

Почтовое тело становится двойным:

// 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 за пределами l oop, либо сделайте следующее:

            if (order.AssemblyOrderID == assemblyOrderIDs[assemblyOrderIDs.Count - 1])
            {
                orderBody += order.OrderQuantity + "x " + order.Article.Article_Number + "<br />";
                objMM.Body = orderBody;
            }   
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...