DSoft.Portable.WebClient.Grpc 4.0.2312.111

dotnet add package DSoft.Portable.WebClient.Grpc --version 4.0.2312.111
NuGet\Install-Package DSoft.Portable.WebClient.Grpc -Version 4.0.2312.111
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DSoft.Portable.WebClient.Grpc" Version="4.0.2312.111" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DSoft.Portable.WebClient.Grpc --version 4.0.2312.111
#r "nuget: DSoft.Portable.WebClient.Grpc, 4.0.2312.111"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DSoft.Portable.WebClient.Grpc as a Cake Addin
#addin nuget:?package=DSoft.Portable.WebClient.Grpc&version=4.0.2312.111

// Install DSoft.Portable.WebClient.Grpc as a Cake Tool
#tool nuget:?package=DSoft.Portable.WebClient.Grpc&version=4.0.2312.111

Portable Web Client

Cross platform web client framework for calling ASP.NET Core RESTful Web Apis and gRPC services

Functionality

The libary provides low level, bootstrapped base classes to simplify the building of client libraries for use with ASP.NET Core Web Apis and now gRPC services too.

  • Base web service client classes for RESTful Web APIs and gRPC service clients
    • Core Web Client functionality
    • Stores Url
    • Can check for connectivity
    • Stores Default Timeout
    • Supports gRPC fpr Web
  • Base service client classes for both RESTFul and Grpc services
    • Handles RestClient and Grpc channel management functionality
    • Helper methods for Get and Post method calls
    • Simplifies calls to the services
  • Base request and response classes
  • Generic methods and extensions for calling RESTful Web APIs
  • Secure request and response classes using a SecurePayload
  • Integrated encryption, with abiltiy provide override with custom implementations.
    • Uses 256-bit AES encryption by default

V3.x and v3.1 breaking changes

With the move to v3 some of the classes have been renamed and moved into different packages, such as ServiceClientBase which now exists in DSoft.Portable.WebClient.Rest and is now named RestServiceClientBase.

Encryption changes

v3.0 only!
You know have to set an InitVector key of your own on EncryptionProviderFactory before encrption and decryption will function.

v3.1 and Above
In v3.1 and above the InitVector key is passed explicilty to the IEncryptionProvider implementation when returned by EncryptionProviderFactory.Build. This allows for calls to multiple services using multiple IVs. Check out the test harness for an example.

Build status

Build Status

Packages

Platform/Feature Package name Stable Beta
Core DSoft.Portable.WebClient.Core NuGet NuGet
Encryption DSoft.Portable.WebClient.Encryption NuGet NuGet
Grpc DSoft.Portable.WebClient.Grpc NuGet NuGet
Grpc Encryption DSoft.Portable.WebClient.Grpc.Encryption NuGet NuGet
Grpc Encryption Build Tools DSoft.Portable.WebClient.Grpc.Encryption.Tools NuGet NuGet
Rest DSoft.Portable.WebClient.Rest NuGet NuGet
Rest Encryption DSoft.Portable.WebClient.Rest.Encryption NuGet NuGet
Rest Extensions DSoft.Portable.WebClient.Rest.Extensions NuGet NuGet
EF Core Security Entities DSoft.Portable.Server.Security.Core NuGet NuGet
EF Core Secure Database contexts DSoft.Portable.EntityFrameworkCore.Security NuGet NuGet

Version History (from 4.0)

  • Version 4.0.0
    • Added support for .NET 8.0
    • Removed EF Core libraries
    • Updated to last RestSharp
    • Improved support for Dependency Injecting GrpcClientOptions
    • Added custom HttpHandler to GrpcClientOptions
    • Cleaned up GrpcChannelManager code and add support for the custom HttpHandler in GrpcClientOptions
      • This works great for Testing you Grpc Services with WebApplicationFactory
    • Updated AesEncryptionProvider to use Aes.Create
    • Added Unit Test sample
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on DSoft.Portable.WebClient.Grpc:

Package Downloads
DSoft.Portable.WebClient.Grpc.Encryption

Encrypted payload communications classes for the Grpc client

DSoft.Portable.WebClient.Grpc.Extensions

Extension classes for DSoft.Portable.WebClient.Grpc

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.0.2312.111 263 12/12/2023
4.0.2312.71 146 12/7/2023
3.2.2302.221 561 2/22/2023
3.1.2204.241 1,087 4/24/2022
3.1.2204.221 666 4/22/2022
3.1.2204.51 832 4/5/2022
3.1.2112.232 502 12/23/2021
3.1.2112.231 356 12/23/2021
3.0.2112.72-prereleaae 180 12/7/2021
3.0.2109.261-prereleaae 300 9/26/2021
3.0.2108.201 508 8/21/2021
3.0.2108.62-prerelease 184 8/6/2021
3.0.2108.61-prerelease 207 8/6/2021
3.0.2108.21-prerelease 174 8/2/2021
3.0.2107.201-prerelease 206 7/20/2021
3.0.2107.64-prerelease 378 7/6/2021
3.0.2107.63-prerelease 184 7/6/2021
3.0.2107.61-prerelease 194 7/6/2021
3.0.2107.51-prerelease 212 7/5/2021
3.0.2107.42-prerelease 235 7/4/2021
3.0.2107.41-prerelease 309 7/4/2021

v3.1 - Release