В создаваемой мной системе .net существует потребность в автоматических уведомлениях по электронной почте. Они должны быть доступны для редактирования администратором. Как это сделать проще всего? Таблица SQL и WYSIWIG для редактирования?
Очередь - отличная идея. Я какое-то время прибегал к подобному процессу в своей старой компании.





Вы просто говорите об интерфейсе и хранилище или о реализации отправки электронных писем?
Да, таблица SQL с FROM, TO, Subject, Body должна работать для хранения и, черт возьми, текстовое поле или даже, возможно, поле RichText должно работать для редактирования.
Или это веб-интерфейс?
Для фактической отправки ознакомьтесь с пространством имен System.Web.Mail, оно довольно понятно и просто в использовании :)
Да, на высоком уровне. : D Главное есть место для хранения шаблонов. База данных - отличный вариант, если вы еще не используете ее, тогда файловые системы работают нормально.
Редакторы WSIWIG (такие как fckeditor) работают хорошо и предоставляют вам несколько хороших вариантов в отношении разрешенных вами функций.
Если вам нужна какая-то система замены токенов, тоже неплохо. Например, если кто-то помещает% FIRSTNAME% в шаблон электронной почты, код, который генерирует электронное письмо, может выполнить простое сопоставление с шаблоном для замены известных токенов другими известными значениями, которые могут быть динамическими в зависимости от пользователя или других обстоятельств.
Я думаю, что если это автоматические уведомления, это означает, что они, вероятно, выходят из строя в результате какого-либо события в вашем программном обеспечении. Если это веб-приложение, и вы собираетесь рассылать некоторые из них, рассмотрите возможность внедрения очереди электронной почты, а не отправки электронной почты при каждом событии.
Компонент может периодически запрашивать очередь и отправлять любые ожидающие обработки элементы.
Adam Haile writes:
check out the System.Web.Mail namespace
Под этим вы подразумеваете System.Net.Mail в .Net 2.0 и выше :)
Как насчет использования новых компонентов рабочего процесса в .NET 3.0 (и 3.5)? Это то, что мы используем в сочетании с шаблонами в моем текущем проекте. Шаблоны имеют базовый формат, а токены заменяются пользовательской информацией.