我刚刚为crm在线编写插件,现在遇到了一个奇怪的问题。
当我通过调试器运行插件时,我得到了预期的结果,但是当我让插件自行运行时,它无法按预期运行。
在这个插件中,我正在收听新队列的创建事件,我正在检查队列是否是电子邮件。到目前为止,所有内容都按预期运行,但是在收到电子邮件后,我会检查电子邮件是否有附件,以及当事情开始出现偏差时。通过调试器,我可以看到附件文件,但是就其本身而言,插件无法找到附件。这对我来说非常奇怪,因为我可以看到队列中的电子邮件,并且肯定有附件。
导致这种情况发生的原因,为什么会发生,这是一个常见问题?
答案 0 :(得分:2)
有点猜测。
有一个时间问题,当你进行调试时,由于你人为地减慢了应用程序的速度而导致计时问题不明显。
我猜你的插件是同步的,事情就是这样发生的。
执行中
在调试中
鉴于电子邮件和电子邮件附件是单独的数据库表,这似乎是一个很好的呼声,CRM可能会分别创建两个创建调用。
测试这一理论的方法
Thread.Sleep
(不超过2分钟,一分钟就可以了)。如果我的理论证明是真的,最好的解决办法是找到另一种注册插件的方法。