DisposableHelpers 1.2.181
dotnet add package DisposableHelpers --version 1.2.181
NuGet\Install-Package DisposableHelpers -Version 1.2.181
<PackageReference Include="DisposableHelpers" Version="1.2.181" />
<PackageVersion Include="DisposableHelpers" Version="1.2.181" />
<PackageReference Include="DisposableHelpers" />
paket add DisposableHelpers --version 1.2.181
#r "nuget: DisposableHelpers, 1.2.181"
#:package DisposableHelpers@1.2.181
#addin nuget:?package=DisposableHelpers&version=1.2.181
#tool nuget:?package=DisposableHelpers&version=1.2.181
DisposableHelpers
Disposable helpers for IDisposable and IAsyncDisposable with source generators. Also capable of both anonymous disposable and anonymous async disposable.
NuGets
| Name | Info |
|---|---|
| DisposableHelpers |
Installation
// Install release version
Install-Package DisposableHelpers
// Install pre-release version
Install-Package DisposableHelpers -pre
Supported frameworks
.NET Standard 2.0 and above - see https://github.com/dotnet/standard/blob/master/docs/versions.md for compatibility matrix
Usage
Disposable
using DisposableHelpers;
namespace YourNamespace
{
public class SampleDisposable : Disposable
{
private SampleUnmanagedResource resources;
protected override void Dispose(bool disposing)
{
if (disposing)
{
resources.Release();
}
base.Dispose(disposing);
}
}
}
Disposable Source Generator
using DisposableHelpers.Attributes;
namespace YourNamespace
{
[Disposable]
public partial class SampleDisposable
{
private SampleUnmanagedResource resources;
protected void Dispose(bool disposing)
{
if (disposing)
{
resources.Release();
}
base.Dispose(disposing);
}
}
}
Anonymous Disposable
using DisposableHelpers;
namespace YourNamespace
{
public static class Program
{
private static SampleUnmanagedResource resources;
public static void Main(string[] args)
{
Disposable disposable = new Disposable(disposing =>
{
if (disposing)
{
resources.Release();
}
});
disposable.Dispose();
}
}
}
AsyncDisposable
using DisposableHelpers;
namespace YourNamespace
{
public class SampleAsyncDisposable : AsyncDisposable
{
private SampleAsyncUnmanagedResource resources;
protected override async ValueTask Dispose(bool isDisposing)
{
if (isDisposing)
{
await resources.Release();
}
return base.Dispose(isDisposing);
}
}
}
AsyncDisposable Source Generator
using DisposableHelpers.Attributes;
namespace YourNamespace
{
[AsyncDisposable]
public partial class SampleAsyncDisposable
{
private SampleAsyncUnmanagedResource resources;
protected async ValueTask Dispose(bool isDisposing)
{
if (isDisposing)
{
await resources.Release();
}
return base.Dispose(isDisposing);
}
}
}
Anonymous AsyncDisposable
using DisposableHelpers;
namespace YourNamespace
{
public static class Program
{
private static SampleAsyncUnmanagedResource resources;
public static async void Main(string[] args)
{
AsyncDisposable disposable = new AsyncDisposable(async disposing =>
{
if (disposing)
{
await resources.Release();
}
});
await disposable.DisposeAsync();
}
}
}
Want To Support This Project?
All I have ever asked is to be active by submitting bugs, features, and sending those pull requests down!.
| Product | Versions 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 is compatible. 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. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.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 is compatible. |
| .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. |
-
.NETStandard 2.0
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.7)
-
net10.0
- No dependencies.
-
net6.0
- No dependencies.
-
net7.0
- No dependencies.
-
net8.0
- No dependencies.
-
net9.0
- No dependencies.
NuGet packages (2)
Showing the top 2 NuGet packages that depend on DisposableHelpers:
| Package | Downloads |
|---|---|
|
SingletonSessionHelpers
Provides a base API for singleton session design pattern. |
|
|
LockerHelpers
Provides helpers for execution locking mechanism. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.2.181 | 14 | 5/6/2026 |
| 1.2.180 | 87 | 5/5/2026 |
| 1.2.179 | 213 | 5/4/2026 |
| 1.2.178 | 307 | 4/30/2026 |
| 1.2.177 | 191 | 4/29/2026 |
| 1.2.176 | 185 | 4/28/2026 |
| 1.2.175 | 52 | 4/28/2026 |
| 1.2.174 | 471 | 4/22/2026 |
| 1.2.173 | 53 | 4/22/2026 |
| 1.2.172 | 101 | 4/21/2026 |
| 1.2.171 | 84 | 4/20/2026 |
| 1.2.170 | 88 | 4/18/2026 |
| 1.2.169 | 103 | 4/14/2026 |
| 1.2.168 | 58 | 4/14/2026 |
| 1.2.167 | 112 | 4/7/2026 |
| 1.2.166 | 58 | 4/7/2026 |
| 1.2.165 | 139 | 4/2/2026 |
| 1.2.164 | 62 | 4/2/2026 |
| 1.2.163 | 126 | 3/25/2026 |
| 1.2.162 | 63 | 3/25/2026 |
## New Version
* Bump `disposable_helpers` from `1.2.180` to `1.2.181`. See [changelog](https://github.com/Kiryuumaru/DisposableHelpers/compare/disposable_helpers/1.2.180...disposable_helpers/1.2.181)
## What's Changed
* Bump NukeBuildHelpers from 9.0.23 to 9.0.24 by @dependabot[bot] in https://github.com/Kiryuumaru/DisposableHelpers/pull/242
**Full Changelog**: https://github.com/Kiryuumaru/DisposableHelpers/compare/build.20260505193913.0ec39be...build.20260506193934.c3fbf1e