• BizTalk使用SMTP发送Mail


      很多时候,我们需要一些Common的程序来处理日常的一些事务。例如,有时候我们需要提供一些底层的程序,最近就做了一个能够AutoMail的Application。

      对于BizTalk来说,他自带了一个SMTP的Adapter,使用这个Adapter就可以实现我们的目标。

      首先,对于这个Common的Application,我们为他创建了一个独立的主机      SMTPHost

      然后,我会创建这个Host的一个Instance,

    建立这个主机和主机实例可以保证这个Common的Application能独立于你的其他的主机实例存在。

    考虑到我们可能会使用到多个SMTP服务来发送Mail,这是我们可以在SMTP的Adapter界面新增一个Send Handle,在这个Handle里面可以配置我们要使用的SMTP的Server和From Address。

    配置好这些后,我们的准备工作就完成了。

    接下来我们开发流程。

    由于这是一个Common的Application,所以要尽可能的把他做成单一的功能,而且有比较适合的接口给其他的流程调用。

    首先,为发送Mail定制一个Pipeline,在这个Pipeline里面要对Mail内容添加MIME信息以及对Mail内容加密之类的,

    接下来就是我们的Orchestration了,这个很简单。但是我们这个是要给其他的App调用的,所以会使用一些输入的参数。我使用的是String的输入参数。

    这几个参数就是我们发送Mail的时候必定会用到的,所以把它门做成了接口。这个Orchestration没有一个Active的启动,当他被Call道德时候,只要传给他参数就可以了。当然,他也是Public的。

    在MessageAsign中,我们要配置一个System.String类型的MultipartType的Message,这个message将成为我们Mail内容,并且我们将用它来设置Mail的一些信息。

    MailConfig

    其中SMTPHost和From这一行不是必须的,如果你在SMTP的Send Handle里面配置了的话。

    接下来看MailTo的写法:

    MailTo

    。最后要看一下发送端口的配置:

    SendPort

    这个Port使用的是DynamicBinding,使用我们定制的Pipeline。

    接着生成Strong Key文件,编译部署,最后,在Configration的时候将主机选为我们最开始创建的那个Host。

    启动流程,一切准备就绪了,接下来只需要调用就好了。

    CallSMTP

    这样一个简单的Common的AutoMail程序就完成了,只要我们想用了,就可以随时的调用他了。

  • 相关阅读:
    Linux:CentOS-7配置VMware-15.5与本机IP同网段
    SpringCloud:Zuul路由配置超时问题
    SpringCloud:路由ZUUL的配置详解
    SpringCloud:扩展zuul配置路由访问
    给source insight添加.cc的C++文件后缀识别(转载)
    Linux下共享库嵌套依赖问题 (转载)
    Ubuntu 下编译libjingle-0.6.14 (转载)
    什么是「穷人思维」?
    谁上北大是能力说了算,不该是教育部(转载)
    Installing cmake 2.8.8 or higher on Ubuntu 12.04 (Precise Pangolin) (转载)
  • 原文地址:https://www.cnblogs.com/JasonLiao/p/1773944.html
Copyright © 2020-2023  润新知