示例#1
0
        //protected string GetStringFromHeaders()
        //{
        //    StringBuilder SB = new StringBuilder();
        //    StringBuilder Host = new StringBuilder("Host: ");
        //    bool HasHost = false;
        //    StringBuilder Cookie = new StringBuilder("Cookie: ");
        //    bool HasCookie = false;
        //    foreach (string Key in ParameterStore.Keys)
        //    {
        //        if (Key.Equals("Host", StringComparison.OrdinalIgnoreCase) && !HasHost)// && !Key.Equals("Cookie", StringComparison.OrdinalIgnoreCase))
        //        {
        //            Host.Append(ParameterStore[Key][0]);
        //            Host.Append("\r\n");
        //            HasHost = true;
        //        }
        //        else if (Key.Equals("Cookie", StringComparison.OrdinalIgnoreCase) && !HasCookie)
        //        {
        //            Cookie.Append(ParameterStore[Key][0]);
        //            Cookie.Append("\r\n");
        //            HasCookie = true;
        //        }
        //        else
        //        {
        //            foreach (string Value in ParameterStore[Key])
        //            {
        //                SB.Append(Key);
        //                SB.Append(": ");
        //                SB.Append(Value);
        //                SB.Append("\r\n");
        //            }
        //        }
        //    }
        //    if (HasCookie)
        //    {
        //        SB.Append(Cookie.ToString());
        //    }
        //    SB.Append("\r\n");
        //    if (HasHost)
        //    {
        //        Host.Append(SB.ToString());
        //        string QSWH = Host.ToString();
        //        return QSWH;
        //    }
        //    string QS = SB.ToString();
        //    return QS;
        //}

        //internal void BuildFromHeaderArray(string[] HeaderArray)
        //{
        //    foreach (string Element in HeaderArray)
        //    {
        //        if (Element.Length >= 3)
        //        {
        //            string[] HeaderParts = Element.Split(new char[] { ':' }, 2);
        //            if (HeaderParts.Length == 2)
        //            {
        //                this.Add(HeaderParts[0].Trim(), HeaderParts[1].Trim());
        //            }
        //        }
        //    }
        //}

        protected void AbsorbParametersFromString(string RawString, char Splitter)
        {
            if (RawString.Length > 0)
            {
                string[] RawParameters = RawString.Split(Splitter);
                foreach (string RequestParameter in RawParameters)
                {
                    string[] ParameterParts = RequestParameter.Split(new char[] { '=' }, 2);
                    if (ParameterParts.Length == 2)
                    {
                        this.Add(ParameterParts[0].Trim(), ParameterParts[1].Trim());
                    }
                    else if (ParameterParts.Length == 1)
                    {
                        this.Add(ParameterParts[0].Trim(), "");
                    }
                }
            }
            else
            {
                this.ParameterStore = new Dictionary <string, List <string> >();
            }
        }