internal WebContext(IFeatureCollection features) { this.features = features; connection = new DefaultConnectionInfo(features); fRequest = features.Get <IHttpRequestFeature>(); fRequestCookies = new RequestCookiesFeature(features); fResponse = features.Get <IHttpResponseFeature>(); fWebSocket = features.Get <IHttpWebSocketFeature>(); }
private static IRequestCookieCollection MockRequestCookieCollection(string key, string value) { var requestFeature = new HttpRequestFeature(); var featureCollection = new FeatureCollection(); requestFeature.Headers = new HeaderDictionary { { HeaderNames.Cookie, new StringValues(key + "=" + value) } }; featureCollection.Set <IHttpRequestFeature>(requestFeature); var cookiesFeature = new RequestCookiesFeature(featureCollection); return(cookiesFeature.Cookies); }
private static Dictionary <string, string> GetCookie(IFeatureCollection feature) { Dictionary <string, string> cookies = new Dictionary <string, string>(StringComparer.OrdinalIgnoreCase); var cookiefeture = feature.Get <IRequestCookiesFeature>(); if (cookiefeture == null) { cookiefeture = new RequestCookiesFeature(feature); } if (cookiefeture.Cookies != null && cookiefeture.Cookies.Any()) { foreach (var item in cookiefeture.Cookies) { if (!cookies.ContainsKey(item.Key)) { cookies.Add(item.Key, item.Value); } } } return(cookies); }