Beispiel #1
0
        private string GetItem(ASPHelper.IRequestDictionary dict, string key)
        {
            object retVal = null;
            object o      = dict.GetItem(key);

            ASPHelper.IStringList sl = o as ASPHelper.IStringList;
            if (sl != null)
            {
                if (sl.GetCount() > 0)
                {
                    retVal = sl.GetItem(1);
                }
                Marshal.ReleaseComObject(sl);
            }
            else
            {
                return(o.GetType().ToString());
            }
            return(Convert.ToString(retVal));
        }
Beispiel #2
0
        /// <summary>
        /// Renders the specified ASP Request variable and appends it to the specified <see cref="StringBuilder" />.
        /// </summary>
        /// <param name="builder">The <see cref="StringBuilder"/> to append the rendered data to.</param>
        /// <param name="logEvent">Logging event.</param>
        protected internal override void Append(StringBuilder builder, LogEventInfo logEvent)
        {
            ASPHelper.IRequest request = ASPHelper.GetRequestObject();
            if (request != null)
            {
                if (QueryString != null)
                {
                    builder.Append(GetItem(request.GetQueryString(), QueryString));
                }
                else if (Form != null)
                {
                    builder.Append(GetItem(request.GetForm(), Form));
                }
                else if (Cookie != null)
                {
                    object cookie = request.GetCookies().GetItem(Cookie);
                    builder.Append(Convert.ToString(ASPHelper.GetComDefaultProperty(cookie)));
                }
                else if (ServerVariable != null)
                {
                    builder.Append(GetItem(request.GetServerVariables(), ServerVariable));
                }
                else if (Item != null)
                {
                    ASPHelper.IDispatch   o  = request.GetItem(Item);
                    ASPHelper.IStringList sl = o as ASPHelper.IStringList;
                    if (sl != null)
                    {
                        if (sl.GetCount() > 0)
                        {
                            builder.Append(sl.GetItem(1));
                        }
                        Marshal.ReleaseComObject(sl);
                    }
                }

                Marshal.ReleaseComObject(request);
            }
        }