Utils.EnvironmentManager 1.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Utils.EnvironmentManager --version 1.0.0                
NuGet\Install-Package Utils.EnvironmentManager -Version 1.0.0                
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="Utils.EnvironmentManager" Version="1.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Utils.EnvironmentManager --version 1.0.0                
#r "nuget: Utils.EnvironmentManager, 1.0.0"                
#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 Utils.EnvironmentManager as a Cake Addin
#addin nuget:?package=Utils.EnvironmentManager&version=1.0.0

// Install Utils.EnvironmentManager as a Cake Tool
#tool nuget:?package=Utils.EnvironmentManager&version=1.0.0                

Utils.EnvironmentManager

Quality Gate Status SonarScanner for .NET 6

SonarCloud

<hr>

The EnvironmentManager namespace provides a static class EnvManager that allows you to easily retrieve environment variable values and handle conversions to the desired data type.

EnvManager

The EnvManager class provides methods for retrieving environment variable values and handling conversions.

Method: GetEnvironmentValue<T>

public static T GetEnvironmentValue<T>(string variableName, bool raiseException = false)

This method retrieves the value of the specified environment variable and converts it to the specified type T. When working with decimal values, ensure that the decimal separator is a dot (.), not a comma (,). For example, use 1.23456789 instead of 1,23456789.

Parameters:

  • variableName (string): The name of the environment variable.
  • raiseException (bool, optional): Specifies whether to raise an exception when the environment variable is null or empty or when the conversion fails. Defaults to false.

Returns:

  • T: The converted value of the environment variable.

Example:

// Retrieve the value of the "API_KEY" environment variable as a string
// Environment value: [Your API Key]
string apiKey = EnvManager.GetEnvironmentValue<string>("API_KEY");
Console.WriteLine($"API Key: {apiKey}");

// Retrieve the value of the "MAX_CONNECTIONS" environment variable as an integer
// Environment value: 123
int maxConnections = EnvManager.GetEnvironmentValue<int>("MAX_CONNECTIONS");
Console.WriteLine($"Max Connections: {maxConnections}");

// Retrieve the value of the "ENABLE_LOGGING" environment variable as a boolean
// Environment value: true
bool enableLogging = EnvManager.GetEnvironmentValue<bool>("ENABLE_LOGGING");
Console.WriteLine($"Enable Logging: {enableLogging}");

// Retrieve the value of the "PI_VALUE" environment variable as a decimal
// Environment value: 3.1415926535
decimal piValue = EnvManager.GetEnvironmentValue<decimal>("PI_VALUE");
Console.WriteLine($"Pi Value: {piValue}");

// Retrieve the value of the "DATE_FORMAT" environment variable as a DateTime
// Environment value: 2023-05-14T14:30:00
DateTime dateFormat = EnvManager.GetEnvironmentValue<DateTime>("DATE_FORMAT");
Console.WriteLine($"Date Format: {dateFormat.ToString("yyyy-MM-ddTHH:mm:ss")}");

In the example above, the GetEnvironmentValue method is used to retrieve the values of different environment variables. The method automatically handles conversions to the specified types (string, int, bool, decimal, and DateTime). If the environment variable is null or empty, the method either raises an exception (if raiseException is true) or returns the default value for the specified type.

For the DateTime conversion, the method supports various date and time formats. If the value of the environment variable is not in a valid format, a FormatException will be thrown. Make sure to set the appropriate date and time format for the DATE_FORMAT environment variable.

Note: If the conversion fails, the method either raises an exception (if raiseException is true) or returns the default value for the specified type.

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

    • No dependencies.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on Utils.EnvironmentManager:

Package Downloads
ConfiguredSqlConnection

The NuGet package is a collection of utilities for working with SQL Server database connections using environment settings and secure connection strings.

BNBParty.GraphQLClient

GraphQL Client for BNBParty .NET

EthSmartContractIO.SecretsProvider

A EthSmartContractIO module, that facilitates the secure creation of an Ethereum account and the extraction of secrets.

DownloaderV3.Source.CovalentLastBlock

The module for fetching the latest block data using Covalent API in the DownloaderV3 system.<

DownloaderV3.Source.CovalentDocument

The module for fetching, decoding, and saving blockchain event data using Covalent API in the DownloaderV3 system.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.1.0 221 10/22/2024
4.0.1 663 8/27/2024
3.0.4 624 6/9/2024
3.0.3 88 6/9/2024
3.0.2 102 6/8/2024
3.0.1 98 6/6/2024
3.0.0 157 6/3/2024
2.0.1 3,934 8/7/2023
2.0.0 153 8/6/2023
1.1.0 2,582 6/15/2023
1.0.0 702 5/15/2023