aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Jan Tattermusch <jtattermusch@users.noreply.github.com>2018-04-27 12:47:25 +0200
committerGravatar GitHub <noreply@github.com>2018-04-27 12:47:25 +0200
commit77ffde2651825a0d272ad48d3e49f31128467969 (patch)
tree676cdc45ab974c39fe1f1713ed9d083b83060885
parent3450b16c5980e6b17984c4a7346dc4f1c0a97809 (diff)
parentd90415965a775d02635fe3508443cbbf3e0670cc (diff)
Merge pull request #15178 from jtattermusch/better_csharp_instructions
Better C# build instructions.
-rw-r--r--src/csharp/README.md29
1 files changed, 21 insertions, 8 deletions
diff --git a/src/csharp/README.md b/src/csharp/README.md
index 6821ad225e..e117e66afd 100644
--- a/src/csharp/README.md
+++ b/src/csharp/README.md
@@ -16,16 +16,17 @@ PREREQUISITES
When using gRPC C# under .NET Core you only need to [install .NET Core](https://www.microsoft.com/net/core).
-- Windows: .NET Framework 4.5+, Visual Studio 2013, 2015, 2017
-- Linux: Mono 4+, MonoDevelop 5.9+ (with NuGet add-in installed)
-- Mac OS X: Xamarin Studio 5.9+
+In addition to that, you can also use gRPC C# with these runtimes / IDEs
+- Windows: .NET Framework 4.5+, Visual Studio 2013, 2015, 2017, Visual Studio Code
+- Linux: Mono 4+, Visual Studio Code, MonoDevelop 5.9+
+- Mac OS X: Mono 4+, Visual Studio Code, Xamarin Studio 5.9+
HOW TO USE
--------------
**Windows, Linux, Mac OS X**
-- Open Visual Studio / MonoDevelop / Xamarin Studio and start a new project/solution.
+- Open Visual Studio / MonoDevelop / Xamarin Studio and start a new project/solution (alternatively, you can create a new project from command line with `dotnet` SDK)
- Add the [Grpc](https://www.nuget.org/packages/Grpc/) NuGet package as a dependency (Project options -> Manage NuGet Packages).
@@ -37,12 +38,23 @@ BUILD FROM SOURCE
You only need to go through these steps if you are planning to develop gRPC C#.
If you are a user of gRPC C#, go to Usage section above.
+**Prerequisites for contributors**
+
+- [dotnet SDK](https://www.microsoft.com/net/core)
+- [Mono 4+](https://www.mono-project.com/) (only needed for Linux and MacOS)
+- Prerequisites mentioned in [INSTALL.md](../../INSTALL.md#pre-requisites)
+ to be able to compile the native code.
+
**Windows, Linux or Mac OS X**
-- The easiest way to build is using the `run_tests.py` script that will take care of building the `grpc_csharp_ext` native library:
+- The easiest way to build is using the `run_tests.py` script that will take care of building the `grpc_csharp_ext` native library.
+
```
+ # NOTE: make sure all necessary git submodules with dependencies
+ # are available by running "git submodule update --init"
+
# from the gRPC repository root
- $ python tools/run_tests/run_tests.py -c dbg -l csharp --build_only
+ $ python tools/run_tests/run_tests.py -l csharp -c dbg --build_only
```
- Use Visual Studio 2017 (on Windows) to open the solution `Grpc.sln` or use Visual Studio Code with C# extension (on Linux and Mac). gRPC C# code has been migrated to
@@ -57,11 +69,12 @@ gRPC C# is using NUnit as the testing framework.
Under Visual Studio, make sure NUnit test adapter is installed (under "Extensions and Updates").
Then you should be able to run all the tests using Test Explorer.
-gRPC team uses a Python script to simplify facilitate running tests for
+gRPC team uses a Python script to facilitate running tests for
different languages.
```
-tools/run_tests/run_tests.py -l csharp
+# from the gRPC repository root
+$ python tools/run_tests/run_tests.py -l csharp -c dbg
```
DOCUMENTATION