Fluent Nhibernate - сохранение объекта в базу данных - PullRequest
0 голосов
/ 15 марта 2011

Мой сервис WCF - это служба отчетов - создавайте отчеты и отправляйте их по электронной почте. Отчеты в электронном письме могут быть вложенными / электронными сообщениями в зависимости от требований.

Теперь клиент хочет предварительно просмотреть электронные письма перед их отправкой, поэтому моей службе WCF необходимо вернуть весь объект электронной почты в вызывающее веб-приложение. Если клиент доволен объектом электронной почты, он может просто нажать «Отправить», после чего снова вызовет службу WCF для отправки электронной почты.

Я думал сохранить объекты электронной почты в базе данных, прежде чем они будут отправлены клиенту для проверки. Как лучше всего сохранить объект электронной почты в моем сценарии, учитывая:

  • Я использую Fluent NHibernate
  • Каждый объект электронной почты может иметь несколько вложений
  • Когда вместо вложений отчеты внедряются как тело письма, тело сообщения электронной почты может быть тяжелым.

Спасибо!

1 Ответ

2 голосов
/ 15 марта 2011

Все зависит от того, сколько времени занимает генерация отчетов.Если это всего лишь несколько секунд, просто создайте отчет заново, используя те же параметры, что и в исходном запросе.Если ваше приложение чем-то похожее на мое, тогда большая часть времени отчетов тратится в базе данных, и в этом случае может быть удовлетворительным хранить отформатированные данные, возвращенные из запроса / хранимой процедуры, где-нибудь доступным, например, во временном каталогесервер.

Я бы не рекомендовал хранить двоичные объекты электронной почты или что-либо подобное в базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...