Mugur Marculescu 04e3a6e332 Merge pull request #619 from jayantkolhe/jayantkolhe-patch-2 há 11 anos atrás
..
GrpcApi df89cf8391 Updated Copyright information and assembly versions for C# há 11 anos atrás
GrpcApiTests df89cf8391 Updated Copyright information and assembly versions for C# há 11 anos atrás
GrpcCore df89cf8391 Updated Copyright information and assembly versions for C# há 11 anos atrás
GrpcCoreTests df89cf8391 Updated Copyright information and assembly versions for C# há 11 anos atrás
InteropClient df89cf8391 Updated Copyright information and assembly versions for C# há 11 anos atrás
MathClient df89cf8391 Updated Copyright information and assembly versions for C# há 11 anos atrás
ext 2f2afd20be fixed string.h include há 11 anos atrás
.gitignore 860f6d0820 started using nuget packages for dependencies há 11 anos atrás
Grpc.sln d233d3ae58 added some more interop tests há 11 anos atrás
README.md 04e3a6e332 Merge pull request #619 from jayantkolhe/jayantkolhe-patch-2 há 11 anos atrás

README.md

gRPC C#

A C# implementation of gRPC.

Status

This gRPC C# implementation is work-in-progress and is not expected to work yet.

  • The implementation is a wrapper around gRPC C core library
  • Code only runs under mono currently, building gGRPC C core library under Windows is in progress.
  • It is very possible that some parts of the code will be heavily refactored or completely rewritten.

INSTALLATION AND USAGE: WINDOWS

  • Open Grpc.sln using Visual Studio 2013. NuGet dependencies will be restored upon build.

INSTALLATION AND USAGE: LINUX & MONO

  • Compile and install the gRPC C# extension library (that will be used via P/Invoke from C#).

    make grpc_csharp_ext
    sudo make install_grpc_csharp_ext
    
  • Prerequisites for development: Mono framework, MonoDevelop (IDE)

    sudo apt-get install mono-devel
    sudo apt-get install monodevelop monodevelop-nunit
    sudo apt-get install nunit nunit-console
    
  • NuGet is used to manage project's dependencies. Prior opening Grpc.sln, download dependencies using NuGet restore command:

    # Import needed certicates into Mono certificate store:
    mozroots --import --sync
    
    # Download NuGet.exe http://nuget.codeplex.com/releases/
    # Restore the nuget packages with Grpc C# dependencies
    mono ~/Downloads/NuGet.exe restore Grpc.sln
    
  • Use MonoDevelop to open the solution Grpc.sln (you can also run unit tests from there).

  • After building the solution with MonoDevelop, you can use nunit-console to run the unit tests (currently only running one by one will make them pass.

    nunit-console GrpcCoreTests.dll
    

CONTENTS

  • ext: The extension library that wraps C API to be more digestible by C#.
  • GrpcApi: API examples for math.proto and testservice.proto
  • GrpcCore: The main gRPC C# library.
  • InteropClient: Client for interop testing.
  • MathClient: An example client that sends some requests to math server.