示例#1
0
 /// <summary>
 /// Makes a server streaming request.
 /// </summary>
 /// <param name="client">The client.</param>
 /// <param name="additionalMetadata">The additional metadata.</param>
 /// <returns>A Task.</returns>
 public static async Task MakeServerStreamingRequest(Foobar.FoobarClient client, Metadata additionalMetadata)
 {
     using var call = client.ServerStreaming(DefaultRequestMessage, headers: additionalMetadata);
     while (await call.ResponseStream.MoveNext().ConfigureAwait(false))
     {
     }
 }
示例#2
0
        /// <summary>
        /// Makes a client streaming request.
        /// </summary>
        /// <param name="client">The client.</param>
        /// <param name="additionalMetadata">The additional metadata.</param>
        /// <returns>A Task.</returns>
        public static async Task MakeClientStreamingRequest(Foobar.FoobarClient client, Metadata additionalMetadata)
        {
            using var call = client.ClientStreaming(headers: additionalMetadata);
            await call.RequestStream.WriteAsync(DefaultRequestMessage).ConfigureAwait(false);

            await call.RequestStream.CompleteAsync().ConfigureAwait(false);

            _ = await call.ResponseAsync.ConfigureAwait(false);
        }
示例#3
0
        /// <summary>
        /// Makes a duplex streaming request.
        /// </summary>
        /// <param name="client">The client.</param>
        /// <param name="additionalMetadata">The additional metadata.</param>
        /// <returns>A Task.</returns>
        public static async Task MakeDuplexStreamingRequest(Foobar.FoobarClient client, Metadata additionalMetadata)
        {
            using var call = client.DuplexStreaming(headers: additionalMetadata);
            await call.RequestStream.WriteAsync(DefaultRequestMessage).ConfigureAwait(false);

            await call.RequestStream.CompleteAsync().ConfigureAwait(false);

            while (await call.ResponseStream.MoveNext().ConfigureAwait(false))
            {
            }
        }
示例#4
0
 /// <summary>
 /// Makes a unary asynchronous request.
 /// </summary>
 /// <param name="client">The client.</param>
 /// <param name="additionalMetadata">The additional metadata.</param>
 /// <returns>A Task.</returns>
 public static async Task MakeUnaryAsyncRequest(Foobar.FoobarClient client, Metadata additionalMetadata)
 {
     using var call = client.UnaryAsync(DefaultRequestMessage, headers: additionalMetadata);
     _ = await call.ResponseAsync.ConfigureAwait(false);
 }
示例#5
0
 /// <summary>
 /// Makes a unary asynchronous request.
 /// </summary>
 /// <param name="client">The client.</param>
 /// <returns>A Task.</returns>
 public static async Task MakeUnaryAsyncRequest(Foobar.FoobarClient client)
 {
     using var call = client.UnaryAsync(DefaultRequestMessage);
     _ = await call.ResponseAsync.ConfigureAwait(false);
 }
 static void MakeRequest(Foobar.FoobarClient client)
 {
     using var call = client.UnaryAsync(FoobarService.DefaultRequestMessage);
 }