我将Microsoft.Bot.Builder从版本3.5.5升级到3.8.0
现在,当我为活动对象调用GetMentions()
时,我从Microsoft.Bot.Connector.dll获取了System.StackOverflowException
任何人都可以提出解决方案。
答案 0 :(得分:0)
此问题已经在BotBuilder github repo中记录,并且具有一致的重复步骤。您可以跟踪和订阅问题here。
HasContent
的方法GetMentions
和IMessageActivity
导致StackOverflowException
,因为"与实例方法具有相同名称和签名的扩展方法将不被调用。" 换句话说,从不调用扩展方法(具有相同的名称)。而是方法调用陷入循环。
同时看起来唯一的解决方案就是降级你的版本。
答案 1 :(得分:0)
您可以直接调用扩展方法:
ActivityExtensions.HasContent(activity);
此问题很快就会解决,我们将推出新版本。
编辑:
3.8.1解决了此问题:https://www.nuget.org/packages/Microsoft.Bot.Builder/