private static Task PerformSend(object state) { var context = (SendContext)state; using (var writer = new BinaryMemoryPoolTextWriter(context.Transport.Pool)) { writer.Write("data: "); context.Transport.JsonSerializer.Serialize(context.State, writer); writer.WriteLine(); writer.WriteLine(); writer.Flush(); context.Transport.Context.Response.Write(writer.Buffer); } return context.Transport.Context.Response.Flush(); }
private static Task PerformPartialSend(object state) { var context = (LongPollingTransportContext)state; if (!context.Transport.IsAlive) { return TaskAsyncHelper.Empty; } using (var writer = new BinaryMemoryPoolTextWriter(context.Transport.Pool)) { if (context.Transport.IsJsonp) { writer.Write(context.Transport.JsonpCallback); writer.Write("("); } context.Transport.JsonSerializer.Serialize(context.State, writer); if (context.Transport.IsJsonp) { writer.Write(");"); } writer.Flush(); context.Transport.Context.Response.Write(writer.Buffer); } return context.Transport.Context.Response.Flush(); }