New Service Fabric client library for .NET


We've been working on a new and improved .NET Standard 2.0 client library to replace FabricClient for management tasks like creating and deleting applications or getting detailed info about your cluster. A preview of the new library is now available via NuGet with some exciting improvements.

Self-contained

One of the biggest changes is that it's just a standalone NuGet package, which means unlike FabricClient, you don't need to have the Service Fabric runtime installed to use it. This may not sound like a big deal if you only use Service Fabric APIs from within services where the Service Fabric runtime is always available, but if you have a custom CI/CD environment or just want to use the Service Fabric APIs from any .NET application anywhere, now you can do that with this simple NuGet package.

Mockable

We heard from a lot of you that FabricClient can be frustrating to use because it's virtually impossible to mock everything out for unit testing. So we made sure the new client library is fully mockable so that you can easily unit test anything that uses it.

.NET Standard 2.0

This library is all .NET Standard 2.0, so you can use it on either Windows or Linux in your .NET Core 2.0 applications.

HTTP-based

The Service Fabric API is standardizing around HTTP. In other words, the HTTP API that you use to manage your applications and your cluster is the source of truth. Everything else - CLI, language-specific libraries, etc. - are just thin wrappers around that. This makes it much easier to keep track of versioning and functionality, and again means there's no need to have the Service Fabric runtime libraries installed on a machine in order to make use of the Service Fabric APIs. They're just HTTP, afterall.

Open source

Last but not least, this library is of course completely open source and super simple to build. Check it out on GitHub at Microsoft/service-fabric-client-dotnet or grab the NuGet package, read over the quick start docs, and get started!


Comments (0)

Skip to main content