NetCoreUsefullEndpoints 9.2025.826.514

dotnet add package NetCoreUsefullEndpoints --version 9.2025.826.514
                    
NuGet\Install-Package NetCoreUsefullEndpoints -Version 9.2025.826.514
                    
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="NetCoreUsefullEndpoints" Version="9.2025.826.514" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="NetCoreUsefullEndpoints" Version="9.2025.826.514" />
                    
Directory.Packages.props
<PackageReference Include="NetCoreUsefullEndpoints" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add NetCoreUsefullEndpoints --version 9.2025.826.514
                    
#r "nuget: NetCoreUsefullEndpoints, 9.2025.826.514"
                    
#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.
#:package NetCoreUsefullEndpoints@9.2025.826.514
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=NetCoreUsefullEndpoints&version=9.2025.826.514
                    
Install as a Cake Addin
#tool nuget:?package=NetCoreUsefullEndpoints&version=9.2025.826.514
                    
Install as a Cake Tool

NetCoreUsefullEndpoints

GitHub last commit Nuget NuGet Badge

What it does

Register endpoints for

  1. See environment variables
  2. See current user ( implies authorization )
  3. See environment
  4. Throw error ( with ILogger or without )
  5. Current Date
  6. Digraph of current endpoints
  7. JSON of current endpoints
  8. Configuration View ( GetDebugView )
  9. Connection details ( remote ip address, local ip address...)
  10. Shutdown( and forced) the app ( use await app.RunAsync(UsefullExtensions.UsefullExtensions.cts.Token);
  11. See the start date of the application
  12. See the list of Hosted services / start all / stop all
  13. When the PC has started ( uptime )
  14. Information about the process ( memory, threads, handles, uptime )
  15. Information about adresses
  16. Information about the RuntimeInformation ( OS, Framework)
  17. Info about the user is in role or not

Usage

For .NET 9 , add this reference to your csproj

<ItemGroup>
    <PackageReference Include="NetCoreUsefullEndpoints" Version="9.2025.405.1013" />
  </ItemGroup>

For .NET 8 , add this reference to your csproj

<ItemGroup>
    <PackageReference Include="NetCoreUsefullEndpoints" Version="8.2024.906.1703" />
  </ItemGroup>

Add this reference to your csproj in .NET 6

<ItemGroup>
    <PackageReference Include="NetCoreUsefullEndpoints" Version="6.2022.1231.1100" />
  </ItemGroup>

or in .NET 7

<ItemGroup>
    <PackageReference Include="NetCoreUsefullEndpoints" Version="7.2023.1216.1825" />
  </ItemGroup>

then use it in program.cs

using UsefullExtensions;
//code
var app = builder.Build();
app.MapUsefullAll();
app.MapHostedServices(app.Services.GetServices<IHostedService>().ToArray());
//or for just some usefull
app.MapUsefullConfiguration();

For shutdown 418 please add

builder.Services.AddSingleton<MiddlewareShutdown>();
var app = builder.Build();
//ASAP
app.UseMiddleware<MiddlewareShutdown>();

The list of API endpoints is GET=>/api/usefull/date/start GET=>/api/usefull/date/startUTC GET=>/api/usefull/user/authorization GET=>/api/usefull/user/noAuthorization GET=>/api/usefull/environment GET=>/api/usefull/errorWithILogger GET=>/api/usefull/errorPure GET=>/api/usefull/date/now GET=>/api/usefull/date/nowUTC GET=>/api/usefull/endpoints/graph GET=>/api/usefull/endpoints/text GET=>/api/usefull/configuration GET=>/api/usefull/httpContext/Connection POST=>/api/usefull/shutdown POST=>/api/usefull/shutdownForced/{id} GET=>api/usefull/user/isInRole/{role} GET=>api/usefull/user/claims/simple

Security

Each function has a default implementation with AllowAnonymous ( a part user ) and without put RequireCors ; If you want a special case here, call the functions with

app.MapUsefullAll("myCors", new string[] {"myAuthPolicy"});
//or
app.MapUsefullConfiguration();

For restarting , the last line should be

await app.RunAsync(UsefullExtensions.UsefullExtensions.cts.Token);

Enjoy!

Product Compatible and additional computed target framework versions.
.NET 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 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
9.2025.826.514 161 8/26/2025
9.2025.405.1013 135 4/5/2025
9.2025.312.1703 204 3/12/2025
8.2024.906.1703 186 9/7/2024
8.2024.627.800 149 6/27/2024
7.2023.1216.1825 2,520 12/19/2023
7.2023.916.1715 380 9/16/2023
7.2023.402.1715 391 4/2/2023
7.2023.223.1815 1,583 2/23/2023
7.2023.219.2234 353 2/16/2023
7.2023.219.2134 338 2/15/2023
7.2023.219.2034 331 2/14/2023
7.2023.219.1934 416 2/10/2023
7.2023.219.841 360 2/10/2023
7.2023.207.2230 405 2/7/2023
7.2023.126.700 418 1/26/2023
7.2022.1231.1100 406 12/31/2022
7.2022.1203.1551 455 12/3/2022
6.2022.1231.1100 402 12/31/2022
6.2022.1203.1551 391 12/3/2022
6.2022.1026.2112 483 10/26/2022
6.2022.1012.712 679 10/12/2022
6.2022.722.712 575 7/22/2022
6.2022.721.1154 499 7/22/2022