public async Task StartAsync(HttpRequestDelegate handler) { listener.Prefixes.Add(listenerUrl); listener.Start(); while (true) { var listenerContext = await listener.GetContextAsync(); var listerneFeature = new HttpListenerFeature(listenerContext); var featureCollection = new FeatureCollection(); featureCollection.SetService <IRequestFeature>(listerneFeature); featureCollection.SetService <IResponseFeature>(listerneFeature); var httpContext = new HttpContext(featureCollection); await handler(httpContext); listenerContext.Response.Close(); } }