使用SMTP适配器发送邮件,包括重试,重试间隔和传递通知

时间:2010-02-09 19:28:43

标签: smtp biztalk

我有一个业务流程,它接收带有一些电子邮件属性的XML(例如:to,from,cc,subject等)。

然后我想发送带有动态端口的emailmessage(我根据输入的xml分配了一些值)。发送电子邮件后,我想进行一些进一步处理,但只有在SMTP服务器上成功发送邮件后才能执行处理。

在功能设计中,他们希望每小时重试一次,最多一天,在该周期之后,当无法成功传递时,消息必须在EventLog中。

因此,我将动态端口设置为上下文属性BTS.RetryCount为23,BTS.RetryInterval为60。

我已将动态SMTP端口传递通知设置为“已传输”,并且我有一个catch异常块来捕获DeliveryFailureException。

这够了吗?

如果我要将范围标记为同步,那么对于我阅读几个博客来说,这有点令人困惑......

1 个答案:

答案 0 :(得分:0)

帕特里克,

你是对的,关于BizTalk交付通知这方面的文档很少且令人困惑。经过大量测试后,我无法确定范围设置为Synchronized = true;之间的差异。

Synchronized设置的official documentation仅在并行执行的两个分支中使用时才适用于共享变量。

至于传递通知本身,我目前正面临生产中的问题,FILE适配器在将文件的全部内容写入输出文件夹之前生成其ACK事件 - 它使这部分解决方案无用!