DSoft.Portable.WebClient.Rest 4.1.2411.191

dotnet add package DSoft.Portable.WebClient.Rest --version 4.1.2411.191                
NuGet\Install-Package DSoft.Portable.WebClient.Rest -Version 4.1.2411.191                
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.Rest" Version="4.1.2411.191" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DSoft.Portable.WebClient.Rest --version 4.1.2411.191                
#r "nuget: DSoft.Portable.WebClient.Rest, 4.1.2411.191"                
#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.Rest as a Cake Addin
#addin nuget:?package=DSoft.Portable.WebClient.Rest&version=4.1.2411.191

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

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.1.0
    • Updtated to the latest packages
  • 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 was computed.  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.  net9.0 is compatible. 
.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.Rest:

Package Downloads
DSoft.Portable.WebClient.Rest.Encryption

Encrypted communications classes for the RESRful web api client

DSoft.Portable.WebClient.Rest.Extensions

Extensions to the Rest to RestServiceClientBase

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.1.2411.191 137 11/19/2024
4.1.2405.21 177 5/2/2024
4.0.2312.111 455 12/12/2023
4.0.2312.71 423 12/7/2023
3.2.2302.221 794 2/22/2023
3.1.2204.241 1,534 4/24/2022
3.1.2204.221 1,358 4/22/2022
3.1.2204.51 1,479 4/5/2022
3.1.2112.232 1,041 12/23/2021
3.1.2112.231 861 12/23/2021
3.0.2112.72-prereleaae 666 12/7/2021
3.0.2109.261-prereleaae 693 9/26/2021
3.0.2108.201 1,204 8/21/2021
3.0.2108.62-prerelease 720 8/6/2021
3.0.2108.61-prerelease 683 8/6/2021
3.0.2108.21-prerelease 675 8/2/2021
3.0.2107.201-prerelease 794 7/20/2021
3.0.2107.64-prerelease 842 7/6/2021
3.0.2107.63-prerelease 745 7/6/2021
3.0.2107.61-prerelease 738 7/6/2021
3.0.2107.51-prerelease 727 7/5/2021
3.0.2107.42-prerelease 725 7/4/2021
3.0.2107.41-prerelease 795 7/4/2021

v3.1 - Release