Maison >Applet WeChat >Développement WeChat >Le code source de la démonstration du cadre global des 6 premiers articles du développement asp.net de la plateforme publique WeChat (7)

Le code source de la démonstration du cadre global des 6 premiers articles du développement asp.net de la plateforme publique WeChat (7)

高洛峰
高洛峰original
2017-02-23 14:23:101763parcourir

La démo donnée ici est le code source de la plateforme publique WeChat avec un cadre global. La soi-disant démo est quelque chose qui peut être directement démontré et utilisé. Bien sûr, elle n'aura pas d'éléments très détaillés spécifiques à l'entreprise. niveau et niveau de données. Tout le monde Vous pouvez développer librement sur cette base. Tant que vous lisez les 6 premiers articles, vous pourrez certainement développer quelque chose qui vous est propre.

La démo est simple et facile à comprendre, tout le monde peut la comprendre. Voici les différences entre la démo et mon projet actuel :

1. La démo n'est pas connectée à la base de données. Le téléchargement de la démo peut être utilisé directement. La connexion à la base de données n'est pas pratique pour tout le monde. Dans le premier article, la base de données complète a été open source, y compris l'interface visuelle lors de la conception. Si vous souhaitez vous connecter à la base de données, ajoutez un EF. après avoir créé la base de données. Connectez-vous simplement, la méthode de connexion est dans la partie 2

2. La démo n'encapsule pas le modèle de message WeChat reçu. Parce que le but de l'encapsulation du message reçu est d'enregistrer le message et de l'ajouter à la base de données. Puisqu'il n'y a pas de 1, cela a disparu. La troisième partie de l'encapsulation du message a été écrite

3. aucune vérification à l'entrée de la démo. Étant donné que la démo peut être utilisée par n'importe qui après l'avoir récupérée, si une vérification de signature chiffrée est ajoutée, de nombreuses personnes pourraient ne pas être en mesure de l'ajuster. Pour les tests locaux, il n'y a aucune signature chiffrée pour la vérification (en fait, les tests locaux le peuvent). renvoie directement true), afin que tout le monde puisse. Après l'avoir compris, j'ai supprimé la méthode de vérification. Le code de la méthode de vérification est mot pour mot dans le deuxième article

4. lié à la mise en cache. Toutes les exigences commerciales ne nécessitent pas de mise en cache et d'injection d'IOC, et tout le monde n'y a pas été exposé. Par souci de généralité, elles ont été supprimées. Si vous rencontrez des problèmes liés à l'injection d'IOC et au traitement du cache dans d'autres projets, vous pouvez me le demander, je me ferai un plaisir d'y répondre

Résumé : La démo est un framework complet et simple pour la plateforme publique WeChat, et est convient à tout auteur de développement ; Les articles précédents relatifs aux bases de données qui doivent être utilisées dans des projets réels ont également tous des codes et des méthodes de fonctionnement

N'importe qui peut créer rapidement sa propre plate-forme publique WeChat basée sur la démo ;

Le plus important est de partager l'idée générale ~ La plateforme publique WeChat est en fait très simple. La plupart des gens ne comprennent pas les tenants et les aboutissants de la réception et du traitement des messages. Prenons l'exemple de l'entrée. il peut y avoir de nombreux développements pour ces différents cas. Il faut beaucoup de temps à quiconque pour le comprendre (cela n'a rien à voir avec la capacité technique, principalement parce que certains amis ne peuvent pas tout comprendre d'un coup), et partagez ce code source de démonstration pour que tout le monde puisse commencer

public void LookMsgType(string msgType)
        {

            #region 判断消息类型
            switch (msgType)
            {
                case "text":
                    RText mText = new RText();
                    mText = ReadXml.GetModel<RText>(mText, xmlModel);
                    BLLWei.DoText(dbHome, mText);//文本消息
                    break;
                case "image":
                    RImg mImg = new RImg();
                    mImg = ReadXml.GetModel<RImg>(mImg, xmlModel);
                    BLLWei.DoImg(dbHome,mImg);//图片
                    break;
                case "voice": //声音
                    RVoice mVoice = new RVoice();
                    mVoice = ReadXml.GetModel<RVoice>(mVoice, xmlModel);
                    BLLWei.DoVoice(dbHome,mVoice);
                    break;

                case "video"://视频
                    RVideo mVideo = new RVideo();
                    mVideo = ReadXml.GetModel<RVideo>(mVideo, xmlModel);
                    BLLWei.DoVideo(dbHome, mVideo);
                    break;

                case "location"://地理位置
                    RLocation mLocation = new RLocation();
                    mLocation = ReadXml.GetModel<RLocation>(mLocation, xmlModel);
                    BLLWei.DoLocation(dbHome,mLocation);
                    break;
                case "link"://链接
                    RLink mLink = new RLink();
                    mLink = ReadXml.GetModel<RLink>(mLink, xmlModel);
                    BLLWei.DoLink(dbHome,mLink);
                    break;
                #region 事件
                case "event":

                    switch (ReadXml.ReadModel("Event", xmlModel))
                    {
                        case "subscribe":

                            if (ReadXml.ReadModel("EventKey", xmlModel).IndexOf("qrscene_") >= 0)
                            {
                                RCodeNotSub mNotSub = new RCodeNotSub();
                                mNotSub = ReadXml.GetModel<RCodeNotSub>(mNotSub, xmlModel);
                                BLLWei.DoCodeNotSub(dbHome,mNotSub);//未关注的新用户,扫描带参数的二维码关注
                            }
                            else
                            {
                                RSub mSub = new RSub();
                                mSub = ReadXml.GetModel<RSub>(mSub, xmlModel);
                                BLLWei.DoSub(dbHome,mSub);//普通关注
                            }
                            break;
                        case "unsubscribe":
                            RUnsub mUnSub = new RUnsub ();
                            mUnSub = ReadXml.GetModel<RUnsub>(mUnSub, xmlModel);
                            BLLWei.DoUnSub(dbHome,mUnSub);//取消关注
                            break;

                        case "SCAN":
                            RCodeSub mCodeSub = new RCodeSub();
                            mCodeSub = ReadXml.GetModel<RCodeSub>(mCodeSub, xmlModel);
                            BLLWei.DoCodeSub(dbHome,mCodeSub);//已经关注的用户扫描带参数的二维码
                            break;
                        case "LOCATION"://用户上报地理位置

                            RSubLocation mSubLoc = new RSubLocation();
                            mSubLoc = ReadXml.GetModel<RSubLocation>(mSubLoc, xmlModel);

                            BLLWei.DoSubLocation(dbHome, mSubLoc);
                            break;
                        case "CLICK"://自定义菜单点击

                            RMenuClick mMenuClk = new RMenuClick();
                            mMenuClk = ReadXml.GetModel<RMenuClick>(mMenuClk, xmlModel);
                            BLLWei.DoMenuClick(dbHome, mMenuClk);
                            break;
                        case "VIEW"://自定义菜单跳转事件

                            RMenuView mMenuVw = new RMenuView();
                            mMenuVw = ReadXml.GetModel<RMenuView>(mMenuVw, xmlModel);
                            BLLWei.DoMenuView(dbHome, mMenuVw);
                            break;
                    };
                    break;
                #endregion
            }
            #endregion
        }

J'écrirai plus dans le futur Articles, processus de partage, juste pour partager le processus de développement, vous pouvez voir que toutes les captures d'écran dans mes articles ont supprimé le WeChat ID, nom, etc., bien que lors de la rédaction de l'article, les captures d'écran ont été réalisées sans compte général d'utilisateur Testé.


Pour plus d'articles liés au code source global de la démonstration du framework des 6 premiers articles du développement asp.net de la plateforme publique WeChat (7), veuillez faire attention au PHP Site chinois !


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn