Jan Tattermusch 03e82e2cdf Split address passed to AddListeningPort into host and port преди 11 години
..
Grpc.Auth 0bbfa382ea attempt to support compute_engine_creds interop test преди 11 години
Grpc.Core 03e82e2cdf Split address passed to AddListeningPort into host and port преди 11 години
Grpc.Core.Tests 03e82e2cdf Split address passed to AddListeningPort into host and port преди 11 години
Grpc.Examples 8ab1f7ed3d added concept of ServerCallContext, that is passed to all server-side handlers преди 11 години
Grpc.Examples.MathClient e8fef4319c csharp version 0.1 -> 0.2 преди 11 години
Grpc.Examples.MathServer 03e82e2cdf Split address passed to AddListeningPort into host and port преди 11 години
Grpc.Examples.Tests 03e82e2cdf Split address passed to AddListeningPort into host and port преди 11 години
Grpc.IntegrationTesting 03e82e2cdf Split address passed to AddListeningPort into host and port преди 11 години
Grpc.IntegrationTesting.Client dca6e884ce First attempt to add service account creds interop test преди 11 години
Grpc.IntegrationTesting.Server dca6e884ce First attempt to add service account creds interop test преди 11 години
ext 8c2dd9d864 Fixes for C# cancellation support преди 11 години
.gitignore a5272b6adc A new version C# API based on async/await преди 11 години
EXPERIMENTAL-ONLY b2d4b8399a Added EXPERIMENTAL-ONLY disclaimer file преди 11 години
Grpc.nuspec e8fef4319c csharp version 0.1 -> 0.2 преди 11 години
Grpc.sln bb9d788096 Added Grpc.Auth project преди 11 години
README.md 5cdf37eb7b Removed execute permissions from README files. преди 11 години
Settings.StyleCop 3de9f49e3c Setting up stylecop to ignore generated files and fixing style преди 11 години

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 gRPC 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 Grpc.Core.Tests.dll
    

CONTENTS

  • ext: The extension library that wraps C API to be more digestible by C#.
  • Grpc.Core: The main gRPC C# library.
  • Grpc.Examples: API examples for math.proto
  • Grpc.Examples.MathClient: An example client that sends some requests to math server.
  • Grpc.IntegrationTesting: Client for cross-language gRPC implementation testing (interop testing).