点击或拖拽改变大小
盛派网络

IMessageHandlerWithContextTMC, TRequest, TResponse 接口

Senparc.Weixin SDK 官方教程《微信开发深度解析》已出版,支持中国开源事业,请【购买正版】
《微信公众号+小程序》视频课程已经上线,【点击这里】学习!

NeuChar(纽插)已经上线,为开发者提供一站式跨平台管理枢纽,并可将应用入驻到 NeuChar 应用商店!新功能正在不断增加中,快来使用吧! https://www.neuchar.com
在线动态微信接口 Swagger WebApi 文档: https://weixin.senparc.com:8039

具有上下文的 MessageHandler 接口

命名空间:  Senparc.NeuChar.MessageHandlers
程序集:  Senparc.NeuChar (在 Senparc.NeuChar.dll 中) 版本:1.4.400+9276a4a7db0d8fb887fc6634357928e7b33f68fa
语法
public interface IMessageHandlerWithContext<TMC, TRequest, TResponse> : IMessageHandler<TRequest, TResponse>, 
	IMessageHandlerDocument, IMessageHandlerBase, IMessageHandlerEnlightener, IMessageHandlerNeuralNodes
where TMC : class, new(), Object, IMessageContext<TRequest, TResponse>
where TRequest : class, IRequestMessageBase
where TResponse : class, IResponseMessageBase

类型参数

TMC
TRequest
TResponse

IMessageHandlerWithContextTMC, TRequest, TResponse 类型公开以下成员。

属性
  名称说明
公共属性ApiEnlightener
请求和响应消息有差别化的定义
(继承自 IMessageHandlerEnlightener。)
公共属性CancelExecute
取消执行Execute()方法。一般在OnExecuting()中用于临时阻止执行Execute()。 默认为False。 如果在执行OnExecuting()执行前设为True,则所有OnExecuting()、Execute()、OnExecuted()代码都不会被执行。 如果在执行OnExecuting()执行过程中设为True,则后续Execute()及OnExecuted()代码不会被执行。 建议在设为True的时候,给ResponseMessage赋值,以返回友好信息。
(继承自 IMessageHandlerBase。)
公共属性CurrentAppDataNode
请求和响应消息有差别化的定义
(继承自 IMessageHandlerNeuralNodes。)
公共属性CurrentMessageContext 已过时。
当前用户消息上下文
公共属性CurrentMessageHandlerNode
请求和响应消息有差别化的定义
(继承自 IMessageHandlerNeuralNodes。)
公共属性FinalResponseDocument
最后返回的ResponseDocument。 如果是Senparc.NeuChar.MP引用,并且未设置未加密,则应当和ResponseDocument一致;除此以外(Senparc.NeuChar.QY或已加密),则应当在ResponseDocument基础上进行加密
(继承自 IMessageHandlerDocument。)
公共属性GlobalMessageContext
全局消息上下文
公共属性MessageEntityEnlightener
请求和响应消息有差别化的定义
(继承自 IMessageHandlerEnlightener。)
公共属性MessageIsRepeated
消息是否已经被去重
(继承自 IMessageHandlerBase。)
公共属性OmitRepeatedMessage
忽略重复发送的同一条消息(通常因为微信服务器没有收到及时的响应)
(继承自 IMessageHandlerBase。)
公共属性OnlyAllowEncryptMessage
当平台同时兼容明文消息和加密消息时,只允许处理加密消息(不允许处理明文消息),默认为 False
(继承自 IMessageHandlerBase。)
公共属性PostModel
PostModel
(继承自 IMessageHandlerBase。)
公共属性RequestDocument
在构造函数中转换得到原始XML数据
(继承自 IMessageHandlerDocument。)
公共属性RequestMessage
请求实体
(继承自 IMessageHandlerTRequest, TResponse。)
公共属性ResponseDocument
根据ResponseMessageBase获得转换后的ResponseDocument 注意:这里每次请求都会根据当前的ResponseMessageBase生成一次,如需重用此数据,建议使用缓存或局部变量
(继承自 IMessageHandlerDocument。)
公共属性ResponseMessage
响应实体 只有当执行Execute()方法后才可能有值
(继承自 IMessageHandlerTRequest, TResponse。)
公共属性ServiceProvider
ServiceProvide
(继承自 IMessageHandlerBase。)
公共属性TextResponseMessage
文字返回信息。使用规则:当TextResponseMessage不为null时(""!=null),才获取ResponseDocument。
(继承自 IMessageHandlerDocument。)
公共属性UsedMessageAgent
是否使用了MessageAgent代理
(继承自 IMessageHandlerBase。)
公共属性UsingCompatibilityModelEncryptMessage
是否使用了兼容模式加密信息
(继承自 IMessageHandlerBase。)
公共属性UsingEncryptMessage
是否使用了加密消息格式
(继承自 IMessageHandlerBase。)
公共属性WeixinOpenId
发送者用户名(OpenId)
(继承自 IMessageHandlerBase。)
Top
方法
  名称说明
公共方法BuildResponseMessageAsync
执行请求内部的消息整理逻辑
(继承自 IMessageHandlerBase。)
公共方法Execute
执行请求
(继承自 IMessageHandlerBase。)
公共方法ExecuteAsync
【异步方法】执行微信请求
(继承自 IMessageHandlerBase。)
公共方法GetCurrentMessageContext
当前用户消息上下文
公共方法OnExecuted
执行微信请求后触发
(继承自 IMessageHandlerBase。)
公共方法OnExecutedAsync
【异步方法】执行微信请求后触发
(继承自 IMessageHandlerBase。)
公共方法OnExecuting
执行微信请求前触发
(继承自 IMessageHandlerBase。)
公共方法OnExecutingAsync
【异步方法】执行微信请求前触发
(继承自 IMessageHandlerBase。)
Top
扩展方法
  名称说明
公共扩展器方法RequestNeucharResponseMessage
【异步方法】获取 NeuChar 开放平台的ResponseMessge结果
(由 MessageAgent 定义。)
公共扩展器方法RequestNeuCharResponseMessage
获取 NeuChar 开放平台的ResponseMessge结果
(由 MessageAgent 定义。)
公共扩展器方法RequestNeucharResponseMessageAsync
【异步方法】获取 NeuChar 开放平台的ResponseMessge结果
(由 MessageAgent 定义。)
公共扩展器方法RequestNeuCharResponseMessageAsync
【异步方法】获取 NeuChar 开放平台的ResponseMessge结果
(由 MessageAgent 定义。)
公共扩展器方法RequestNeuCharXml
对接 NeuChar 平台,获取Xml结果,使用WeiWeiHiKey对接 WeiWeiHiKey的获取方式请看:
(由 MessageAgent 定义。)
公共扩展器方法RequestNeuCharXmlAsync
【异步方法】对接 NeuChar 平台,获取Xml结果,使用WeiWeiHiKey对接 WeiWeiHiKey的获取方式请看:
(由 MessageAgent 定义。)
公共扩展器方法RequestResponseMessage(IServiceProvider, String, String, Stream, Boolean, Int32)已重载。
获取ResponseMessge结果
(由 MessageAgent 定义。)
公共扩展器方法RequestResponseMessage(IServiceProvider, String, String, String, Boolean, Int32)已重载。
获取ResponseMessge结果
(由 MessageAgent 定义。)
公共扩展器方法RequestResponseMessageAsync(IServiceProvider, String, String, Stream, Boolean, Int32)已重载。
【异步方法】获取ResponseMessge结果
(由 MessageAgent 定义。)
公共扩展器方法RequestResponseMessageAsync(IServiceProvider, String, String, String, Boolean, Int32)已重载。
【异步方法】获取ResponseMessge结果
(由 MessageAgent 定义。)
公共扩展器方法RequestWeiweihiResponseMessage(IServiceProvider, String, XDocument, String, Int32)已重载。
获取 NeuChar 开放平台的ResponseMessge结果
(由 MessageAgent 定义。)
公共扩展器方法RequestWeiweihiResponseMessage(IServiceProvider, String, RequestMessageBase, String, Int32)已重载。
获取 NeuChar 开放平台的ResponseMessge结果
(由 MessageAgent 定义。)
公共扩展器方法RequestXml(IServiceProvider, String, String, String, Boolean, Int32)已重载。
获取Xml结果
(由 MessageAgent 定义。)
公共扩展器方法RequestXml(IServiceProvider, String, String, Stream, Boolean, Boolean, Int32)已重载。
获取Xml结果。
(由 MessageAgent 定义。)
公共扩展器方法RequestXmlAsync(IServiceProvider, String, String, String, Boolean, Int32)已重载。
【异步方法】获取Xml结果
(由 MessageAgent 定义。)
公共扩展器方法RequestXmlAsync(IServiceProvider, String, String, Stream, Boolean, Boolean, Int32)已重载。
【异步方法】获取Xml结果。
(由 MessageAgent 定义。)
Top
参见