public override void ProcessActivity(WebRequest request, WebResponse response)
        {
            var     list   = new List <WebMeta>();
            var     stitle = "天天录";
            UITitle title  = new UITitle(stitle);
            var     items  = new List <UIClick>();

            var entity = Data.Database.Instance().ObjectEntity <SearchKeyword>()
                         .Where
                         .And().In(new SearchKeyword {
                user_id = Guid.Empty
            })
                         .Entities.Order.Desc(new SearchKeyword {
                Time = 0
            }).Entities;

            entity.Query(0, 20, dr => items.Add(new UIClick(new WebMeta().Put("cmd", "UI", "model", "Subject", "text", dr.Keyword))
            {
                Key = "Search", Text = dr.Keyword
            }));

            if (items.Exists(g => String.Equals(g.Text, stitle, StringComparison.CurrentCultureIgnoreCase)) == false)
            {
                items.Insert(0, new UIClick(new WebMeta().Put("cmd", "UI", "model", "Subject", "text", stitle))
                {
                    Key = "Search", Text = stitle
                });
            }
            title.Items(items.ToArray());
            title.Name("icon", "\uea0e");

            title.Right(new UIEventText().Icon('\uf2e1').Click(UIClick.Scanning()));
            list.Add(new WebMeta().Put("model", "Subject", "cmd", "UI", "text", "知识推荐").Put("RefreshEvent", "Subject.Save"));
            list.Add(new WebMeta().Put("model", "Subject", "cmd", "Follow", "text", "我的关注").Put("RefreshEvent", "Subject.Save"));
            list.Add(new WebMeta().Put("model", "Subject", "cmd", "Self", "text", "我的文档").Put("RefreshEvent", "Subject.Save"));

            response.Redirect(new WebMeta().Put("title", title).Put("sections", list));
        }
        protected UIClick Click(UIClick ui)
        {
            String type = this.AsyncDialog("Click", g =>
            {
                UIRadioDialog di = new UIRadioDialog();
                di.Title         = ("关联功能");
                ListItemCollection listItemCollection = di.Options;//new ListItemCollection();
                listItemCollection.Add("连接扫一扫", "Scanning");
                listItemCollection.Add("连接指令", "Setting");
                listItemCollection.Add("连接拨号", "Tel");
                listItemCollection.Add("连接网址", "Url");

                return(di);
            });

            switch (type)
            {
            case "Scanning":
                return(UIClick.Scanning());

            case "Tel":
                return(UIClick.Tel(this.AsyncDialog("Tel", g =>
                {
                    UITextDialog di = new UITextDialog();
                    di.Title = ("拨号号码");
                    return di;
                })));

            case "Url":
                return(UIClick.Url(new Uri(this.AsyncDialog("Url", g =>
                {
                    UITextDialog di = new UITextDialog();
                    di.Title = ("网址地址");
                    return di;
                }))));


            default:
            case "Setting":

                var     c        = UMC.Data.JSON.Deserialize(UMC.Data.JSON.Serialize(ui)) as Hashtable;
                WebMeta settings = this.AsyncDialog(g =>
                {
                    UIFormDialog di = new UIFormDialog();
                    di.Title        = ("功能指令");
                    di.AddText("模块代码", "Model", (String)c["model"]);
                    di.AddText("指令代码", "Command", (String)c["cmd"]);
                    di.AddPrompt("此块内容为专业内容,请由工程师设置");

                    if (c.ContainsKey("send"))
                    {
                        Object send = c["send"];
                        if (send is String)
                        {
                            di.AddText("参数", "Send", (String)send).PlaceHolder("如果没参数,则用none");
                        }
                        else
                        {
                            di.AddText("参数", "Send", UMC.Data.JSON.Serialize(send)).PlaceHolder("如果没参数,则用none");
                        }
                    }
                    else
                    {
                        di.AddText("参数", "Send").PlaceHolder("如果没参数,则用none").NotRequired();
                    }

                    return(di);
                }, "Send");
                UIClick click   = new UIClick();
                String  Model   = settings.Get("Model");
                String  Command = settings.Get("Command");
                String  Send    = settings.Get("Send");
                click.Send(Model, Command);

                if ("none".Equals(Send, StringComparison.CurrentCultureIgnoreCase) == false)
                {
                    if (String.IsNullOrEmpty(Send) == false)
                    {
                        if (Send.StartsWith("{"))
                        {
                            click.Send(UMC.Data.JSON.Deserialize <WebMeta>(Send));
                        }
                        else
                        {
                            click.Send(Send);
                        }
                    }
                }
                return(click);
            }
        }