NopCommerce не будет помечать сообщения как отправленные в очередь сообщений и продолжает заполняться сообщениями электронной почты. - PullRequest
2 голосов
/ 17 декабря 2010

Я только что установил nopcommerce 1.9 и теперь настраиваю его.

Введены все правильные настройки для SMTP (хост, порт и т. Д.), И тестовое электронное письмо приходит в порядке на любой адрес, с которым я его тестировал.

Однако, если я заполнил контактную форму или зарегистрировал нового пользователя, магазин не может прекратить посылать одно и то же сообщение снова и снова на адрес электронной почты магазина по умолчанию или на адрес пользователя. Продолжает посылать приветствие в магазин электронной почты для тех, кто зарегистрировался, или тела сообщения в контактной форме и т. Д. Чтобы остановить его, я должен зайти в очереди сообщений и удалить оттуда сообщения вручную, эти сообщения помечено как неотправленное! Хотя они были отправлены много раз, очевидно.

Таким образом, он пересылает все, что отправлено магазином, без остановки, даже если сообщение прошло нормально с первого раза.

Кто-нибудь знает, почему он это делает? Подтвердили, что у меня правильные настройки для smtp с моим провайдером веб-хостинга, ничего в почтовом журнале ошибок не стоит.

Спасибо ...

1 Ответ

1 голос
/ 14 января 2011

Если вы запускаете nopCommerce 1.90 со средним уровнем доверия, выполните следующие шаги, чтобы исправить проблему, когда клиенты продолжают получать письма:

  1. Открыть \ Libraries \ Nop.BusinessLogic \ Messages \ MessageService.csfile
  2. Найти метод UpdateQueuedEmail
  3. Заменить if (! _context.IsAttached (queuedEmail)) _context.QueuedEmails.Attach (queuedEmail);

на if (! _context).IsAttached (queuedEmail)) _context.QueuedEmails.Attach (queuedEmail);_context.ObjectStateManager.ChangeObjectState (queuedEmail, System.Data.EntityState.Modified);

  1. Перекомпилировать решение

... или просто заново загрузить последнюю версию здесь (версия до сих пор 1.90)

...