示例#1
0
 /// <summary>Register service method with a service binder with or without implementation. Useful when customizing the  service binding logic.
 /// Note: this method is part of an experimental API that can change or be removed without any prior notice.</summary>
 /// <param name="serviceBinder">Service methods will be bound by calling <c>AddMethod</c> on this object.</param>
 /// <param name="serviceImpl">An object implementing the server-side handling logic.</param>
 public static void BindService(grpc::ServiceBinderBase serviceBinder, CalculatorBase serviceImpl)
 {
     serviceBinder.AddMethod(__Method_Add, serviceImpl == null ? null : new grpc::UnaryServerMethod <global::Calculators.OperationRequest, global::Calculators.OperationResponse>(serviceImpl.Add));
     serviceBinder.AddMethod(__Method_Subtract, serviceImpl == null ? null : new grpc::UnaryServerMethod <global::Calculators.OperationRequest, global::Calculators.OperationResponse>(serviceImpl.Subtract));
     serviceBinder.AddMethod(__Method_Multiply, serviceImpl == null ? null : new grpc::UnaryServerMethod <global::Calculators.OperationRequest, global::Calculators.OperationResponse>(serviceImpl.Multiply));
     serviceBinder.AddMethod(__Method_Divide, serviceImpl == null ? null : new grpc::UnaryServerMethod <global::Calculators.DivisionRequest, global::Calculators.DivisionResponse>(serviceImpl.Divide));
 }
示例#2
0
 /// <summary>Creates service definition that can be registered with a server</summary>
 /// <param name="serviceImpl">An object implementing the server-side handling logic.</param>
 public static grpc::ServerServiceDefinition BindService(CalculatorBase serviceImpl)
 {
     return(grpc::ServerServiceDefinition.CreateBuilder()
            .AddMethod(__Method_Add, serviceImpl.Add)
            .AddMethod(__Method_Subtract, serviceImpl.Subtract)
            .AddMethod(__Method_Multiply, serviceImpl.Multiply)
            .AddMethod(__Method_Divide, serviceImpl.Divide).Build());
 }