Chapter 13. Building C# clients and servers with .NET Core and Windows

 

This chapter covers

  • Configuring Apache Thrift for use with .NET Core on Windows
  • Building C# RPC clients and servers with Apache Thrift
  • Creating Apache Thrift applications with Visual Studio
  • Using C#-supported transports, protocols, and servers

The .NET Core framework and CLR virtual machine provide a distinct and parallel alternative to the Java/JVM ecosystem in enterprise application development, yet often applications from these two environments need to collaborate. Apache Thrift can play an important role in such polyglot settings, providing a unified communication framework that works effectively with C# and other .NET development languages, as well as more than 20 non-.NET languages, including Java.

This chapter walks you through the process of building Apache Thrift clients and servers using C#. While C# is often thought of as a Windows-based language, it’s also widely used on UNIX-like systems, and many developers also use C# in iOS and Android mobile environments. Apache Thrift integrates well with C# and .NET Core in all these settings. In this chapter, we’ll focus on the Windows implementation of .NET Core and C#, though C# developers in other environments should find it easy to adopt the code examples to their preferred platform.

13.1. Setting up Apache Thrift on Windows

13.2. A simple client and server

13.3. C# transports, protocols, and servers

13.4. Long polling with named pipes

Summary