JeffreySu / WeiXinMPSDK

微信全平台 .NET SDK, Senparc.Weixin for C#,支持 .NET Framework 及 .NET Core、.NET 8.0。已支持微信公众号、小程序、小游戏、微信支付、企业微信/企业号、开放平台、JSSDK、微信周边等全平台。 WeChat SDK for C#.
https://weixin.senparc.com
Apache License 2.0
8.43k stars 4.35k forks source link

Senparc.Weixin.MP.Entities.RequestMessageEventBase继承错误 #45

Closed mayswind closed 10 years ago

mayswind commented 10 years ago

Senparc.Weixin.MP.Entities.RequestMessageEventBase继承自RequestMessageBase和IRequestMessageBase,当RequestMessageFactory创建RequestMessage为RequestMessageEventBase类型时(如微博的follow和unfollow),并不继承自IRequestMessageEventBase。 所以当执行MessageHandler的Execute()方法时,在var requestMessageText = (RequestMessage as IRequestMessageEventBase).ConvertToRequestMessageText();这一句中,ConvertToRequestMessageText(IRequestMessageEventBase requestMessageEvent)中获取到的requestMessageEvent是null,导致之后会抛空异常错误。根据继承关系和类名来看,RequestMessageEventBase应该继承自RequestMessageBase和IRequestMessageEventBase。

JeffreySu commented 10 years ago

你好,总体看了一下,问题应该是:RequestMessageEventBase继承了IRequestMessageBase接口,实际上应该是IRequestMessageEventBase。对吧?已经在v7.0.18里面修正。谢谢!

mayswind commented 10 years ago

这次就对了呢

JeffreySu commented 10 years ago

是的,应该就是这里的问题,非常感谢!欢迎继续沟通:)