Пример #1
0
        public static HttpWorkerRequest GetWorkerRequestViaReflection(HttpRequestBase request)
        {
            const BindingFlags bindingFlags = BindingFlags.Instance | BindingFlags.NonPublic;

            // In Mono, the field has a different name.
            var wrField = request.GetType().GetField("_wr", bindingFlags) ?? request.GetType().GetField("worker_request", bindingFlags);

            if (wrField == null) return null;

            return (HttpWorkerRequest)wrField.GetValue(request);
        }
Пример #2
0
		RequestContext SafeGetContext (HttpRequestBase req)
		{
			if (req == null || req.GetType () != httpRequestBaseType)
				return null;
				
			return req.RequestContext;
		}
Пример #3
0
 public HttpRequest GetHttpRequestFromHttpResponseBase(HttpRequestBase request)
 {
     FieldInfo fieldInfo = request.GetType().GetField("_httpRequest", BindingFlags.NonPublic | BindingFlags.Instance);
        if (null != fieldInfo)
        {
        return fieldInfo.GetValue(request) as HttpRequest;
        }
        return null;
 }