Ejemplo n.º 1
0
        /// <summary>
        /// all StringField will be signed and will add timespan,appid,appsecret; appid、appsecret from web.config or app.config
        /// </summary>
        /// <param name="para"></param>
        /// <returns></returns>
        public static void DefaultSignProvider(List <ParmField> para)
        {
            if (para == null)
            {
                para = new List <ParmField>();
            }
            para.Add(new StringField("timespan", Authcomm.GetTimeSpan()));
            para.Add(new StringField("appid", Authcomm.GetAppConfig("appid")));
            string        appsecret = Authcomm.GetAppConfig("appsecret");
            StringBuilder sb        = new StringBuilder();

            foreach (ParmField f in para)
            {
                if (string.IsNullOrEmpty(f.Value))
                {
                    continue;
                }
                if (f.GetType() == typeof(StringField))
                {
                    sb.Append(f.Key.Trim() + "=" + f.Value.Trim() + "&");
                }
            }
            sb.Append("appsecret=" + appsecret);
            string sign = Authcomm.ToMD5String(sb.ToString());

            para.Add(new StringField("sign", sign));
        }