![]() |
VOOZH | about |
dotnet add package EasyRetry --version 2.0.1
NuGet\Install-Package EasyRetry -Version 2.0.1
<PackageReference Include="EasyRetry" Version="2.0.1" />
<PackageVersion Include="EasyRetry" Version="2.0.1" />Directory.Packages.props
<PackageReference Include="EasyRetry" />Project file
paket add EasyRetry --version 2.0.1
#r "nuget: EasyRetry, 2.0.1"
#:package EasyRetry@2.0.1
#addin nuget:?package=EasyRetry&version=2.0.1Install as a Cake Addin
#tool nuget:?package=EasyRetry&version=2.0.1Install as a Cake Tool
In Asynchronous programming in some cases we need to retry a method if it fails. Easy-Retry can provide this functionality with ease 😃
.Net CLI
dotnet add package EasyRetry
Package Manager
Install-Package EasyRetry
Let's say there is a HTTP Task which you need to retry in case it fails
private async Task Task_NetworkBound()
{
await new HttpClient().GetStringAsync("https://dotnetfoundation.org");
}
In order to retry it after 5 seconds you just need to do as follows
//With DI
await _easyRetry.Retry(async () => await Task_NetworkBound());
//Without DI
await new EasyRetry().Retry(async () => await Task_NetworkBound());
Or you can use the retry options to customize the behavior of the retry algorithm as follows
await _easyRetry.Retry(async () => await Task_NetworkBound()
, new RetryOptions()
{
Attempts = 3,
DelayBetweenRetries = TimeSpan.FromSeconds(3),
DelayBeforeFirstTry = TimeSpan.FromSeconds(2),
EnableLogging = true,
DoNotRetryOnTheseExceptionTypes = new List<Type>()
{
typeof(NullReferenceException)
}
});
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 was computed. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 was computed. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp3.1 netcoreapp3.1 is compatible. |
Showing the top 3 NuGet packages that depend on EasyRetry:
| Package | Downloads |
|---|---|
|
AgentHub.Shared.TSCommonUtils
Package Description |
|
|
EasyPipeLine
An easy implementation of chain of responsibility with builder pattern which will give a ready to use pipeline foundation |
|
|
PipeNet
Simplify your complex flow into a well organize pipeline |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated | |
|---|---|---|---|
| 2.0.1 | 50,587 | 12/10/2020 | |
| 2.0.0 | 2,339 | 9/1/2020 | 2.0.0 is deprecated because it has critical bugs. |
| 1.1.1 | 935 | 8/24/2020 | 1.1.1 is deprecated because it has critical bugs. |
| 1.1.0 | 1,194 | 8/23/2020 | 1.1.0 is deprecated because it has critical bugs. |
| 1.0.1 | 965 | 8/23/2020 | 1.0.1 is deprecated because it is no longer maintained. |
| 1.0.0 | 988 | 8/23/2020 | 1.0.0 is deprecated because it is no longer maintained. |