我们目前在接收端口中有一个管道来解密文件并将文件发送到发送端口。我们不处理文件中的任何内容。没有新的问题出现,有时我们遇到的文件在尝试解密并将错误发送到目的地时是空的,biztalk。如果文件为空,有什么方法可以发送电子邮件通知。我可以在管理控制台中执行此操作而不开发任何自定义管道组件吗?
答案 0 :(得分:1)
如果要在接收端口中捕获并发送错误,则必须创建和配置SMTP发送端口,并将“过滤器”设置为ErrorReport.FailureCode存在,并添加ErrorReport.ReceivePortName和ReceivePort名称。使用这些过滤器,发送端口将进行订阅,并在接收端口中获取错误。
但是,如果您使用的是本机文件适配器,则当空文件到达接收位置时,适配器将丢弃该文件,并且不会生成错误。
答案 1 :(得分:0)
由于您正在使用PGP组件,因此我将假定它是基于其中一个示例的自定义组件。
在这种情况下,处理这种情况的正确方法是在尝试解密之前,修改组件以检查传入流的长度。
如果流为空,为0个字节,只需跳过实际解码。然后,您可以设置一个Context属性,指示一个空消息,以后可以用来生成任何警报。
现在,确保200%确保您确实需要发送电子邮件。如果正常情况下是空文件(可以与发件人确认),则生成电子邮件会创建多余的警报,每个人都将忽略该警报。
答案 2 :(得分:-1)
您可以自定义代码,并在文件为空的情况下通过帮助程序发送电子邮件。看一下这个博客: http://ninocrudele.com/biztalk-and-zero-byte-file