文件名称:C#微信公众号开发SDK
文件大小:253KB
文件格式:ZIP
更新时间:2017-10-10 10:35:46
C# SDK 微信
C#版的微信公众号开发SDK Senparc.Weixin.MP几个关键类介绍如下: Entities/Request*.cs 用于接收微信平台自动发送到服务器的实体(发送过来的是XML),包括文本、位置、图片三类 Entities/Response*.cs 用于反馈给发送人的信息实体(最终会转成XML),包括文本、新闻(图文)两类 Helpers/EntityHelper.cs 用于实体和XML之间的转换(由于其中有许多需要特殊处理的字段和类型,这里不能简单用XML序列化) Helpers/MsgTypeHelper.cs 用于获取消息类型 CheckSignature.cs 验证请求合法性类 Enums.cs 各种枚举 RequestMessageFactory.cs 用于自动生成不同Request类型的实体,并作必要的数据填充 Senparc.Weixin.MP几个关键类及重要方法(按一般使用过程排序) 生成验证字符串:Senparc.Weixin.MP.CheckSignature.GetSignature(string timestamp, string nonce, string token = null),返回根据微信平台提供的数据,SHA1加密后的验证字符串(注意token必须跟公众平台的设置一直) 验证请求:Senparc.Weixin.MP.CheckSignature.Check(string signature, string timestamp, string nonce, string token = null),验证请求是否合法 获取请求实体:var requestMessage = Senparc.Weixin.MP.RequestMessageFactory.GetRequestEntity(XDocument doc); 根据不同请求的类型,自动生成可用于操作的实体(doc只需要用XDocument.Parse(xmlString)就能生成),requestMessage.MsgType就是请求枚举类型。 进行判断及各类操作。 根据需要,创建响应类型的实体,如:var responseMessage = ResponseMessageBase.CreateFromRequestMessage(requestMessage, ResponseMsgType.Text) as ResponseMessageText; 即可返回文本类型信息。 由于目前微信只接受XML的返回数据,所以在返回之前还需要做一次转换:XDocument responseDoc = Senparc.Weixin.MP.Helpers.EntityHelper.ConvertEntityToXml(responseMessage); var xmlString =responseDoc.ToString();
【文件预览】:
使用说明.txt
IMessageProcessor.cs
Domain
----ErrInfo.cs(1KB)
----Button.cs(4KB)
----QrCodeCreateMessage.cs(2KB)
----Attentions.cs(1KB)
----ReplyMessage.cs(9KB)
----CustomMessage.cs(7KB)
----ReceiveMessage.cs(4KB)
----User.cs(2KB)
----UserGroup.cs(2KB)
----AccessTokenInfo.cs(1KB)
----ReceiveMessageBase.cs(2KB)
----EventMessage.cs(4KB)
----AppIdInfo.cs(1KB)
WeixinMpSdk.csproj
MessageHandler.cs
IMpClient.cs
Response
----QrCodeCreateResponse.cs(2KB)
----SendCustomMessageResponse.cs(797B)
----GetUserGroupResponse.cs(949B)
----GetGroupsResponse.cs(941B)
----CreateGroupResponse.cs(948B)
----DownloadMediaResponse.cs(929B)
----GetAttentionsResponse.cs(964B)
----UploadMediaResponse.cs(1KB)
----CreateMenuResponse.cs(790B)
----DeleteMenuResponse.cs(790B)
----AccessTokenGetResponse.cs(952B)
----GetUserInfoResponse.cs(955B)
----SetUserGroupResponse.cs(796B)
----ModifyGroupResponse.cs(791B)
----GetMenuResponse.cs(861B)
WeixinMpSdk.v11.suo
IMpRequest.cs
Properties
----AssemblyInfo.cs(1KB)
Request
----GetAttentionsRequest.cs(3KB)
----CreateMenuRequest.cs(2KB)
----ModifyGroupRequest.cs(3KB)
----AccessTokenGetRequest.cs(3KB)
----CreateGroupRequest.cs(3KB)
----SetUserGroupRequest.cs(3KB)
----RequestBase.cs(1KB)
----GetUserGroupRequest.cs(3KB)
----GetMenuRequest.cs(3KB)
----SendCustomMessageRequest.cs(2KB)
----DeleteMenuRequest.cs(2KB)
----GetGroupsRequest.cs(3KB)
----GetUserInfoRequest.cs(3KB)
----DownloadMediaRequest.cs(3KB)
----QrCodeCreateRequest.cs(4KB)
----UploadMediaRequest.cs(3KB)
Util
----WebUtils.cs(16KB)
----FileItem.cs(7KB)
----Tools.cs(3KB)
----FileIO.cs(3KB)
----Logger.cs(6KB)
WeixinMpSdkTest
----Program.cs(31KB)
----WeixinMpSdkTest.csproj(3KB)
----app.config(144B)
----Properties()
--------AssemblyInfo.cs(1KB)
----obj()
--------x86()
----bin()
--------Debug()
--------Release()
MpClient.cs
obj
----Debug()
--------TempPE()
--------DesignTimeResolveAssemblyReferencesInput.cache(6KB)
MpResponse.cs
bin
----Debug()