CommunityToolkit.Aspire.GoFeatureFlag 9.4.0

Prefix Reserved
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package CommunityToolkit.Aspire.GoFeatureFlag --version 9.4.0
                    
NuGet\Install-Package CommunityToolkit.Aspire.GoFeatureFlag -Version 9.4.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="CommunityToolkit.Aspire.GoFeatureFlag" Version="9.4.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="CommunityToolkit.Aspire.GoFeatureFlag" Version="9.4.0" />
                    
Directory.Packages.props
<PackageReference Include="CommunityToolkit.Aspire.GoFeatureFlag" />
                    
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 CommunityToolkit.Aspire.GoFeatureFlag --version 9.4.0
                    
#r "nuget: CommunityToolkit.Aspire.GoFeatureFlag, 9.4.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.
#addin nuget:?package=CommunityToolkit.Aspire.GoFeatureFlag&version=9.4.0
                    
Install CommunityToolkit.Aspire.GoFeatureFlag as a Cake Addin
#tool nuget:?package=CommunityToolkit.Aspire.GoFeatureFlag&version=9.4.0
                    
Install CommunityToolkit.Aspire.GoFeatureFlag as a Cake Tool

CommunityToolkit.Aspire.GoFeatureFlag

Registers a GoFeatureFlagProvider in the DI container for connecting to a GO Feature Flag instance.

Getting started

Install the package

Install the .NET Aspire GO Feature Flag Client library with NuGet:

dotnet add package CommunityToolkit.Aspire.GoFeatureFlag

Usage example

In the Program.cs file of your project, call the AddGoFeatureFlagClient extension method to register a GoFeatureFlagProvider for use via the dependency injection container. The method takes a connection name parameter.

builder.AddGoFeatureFlagClient("goff");

Configuration

The .NET Aspire GO Feature Flag Client integration provides multiple options to configure the server connection based on the requirements and conventions of your project.

Use a connection string

When using a connection string from the ConnectionStrings configuration section, you can provide the name of the connection string when calling builder.AddGoFeatureFlagClient():

builder.AddGoFeatureFlagClient("goff");

And then the connection string will be retrieved from the ConnectionStrings configuration section:

{
    "ConnectionStrings": {
        "goff": "Endpoint=http://localhost:19530/"
    }
}

Use configuration providers

The .NET Aspire GO Feature Flag Client integration supports Microsoft.Extensions.Configuration. It loads the GoFeatureFlagClientSettings from configuration by using the Aspire:GoFeatureFlag:Client key. Example appsettings.json that configures some of the options:

{
    "Aspire": {
        "GoFeatureFlag": {
            "Client": {
                "Endpoint": "http://localhost:19530/",
                "MasterKey": "123456!@#$%"
            }
        }
    }
}

Use inline delegates

Also you can pass the Action<GoFeatureFlagClientSettings> configureSettings delegate to set up some or all the options inline, for example to set the API key from code:

builder.AddGoFeatureFlagClient("goff", settings => settings.ProviderOptions.ApiKey = "123456!@#$%");

AppHost extensions

In your AppHost project, install the CommunityToolkit.Aspire.Hosting.GoFeatureFlag library with NuGet:

dotnet add package CommunityToolkit.Aspire.Hosting.GoFeatureFlag

Then, in the Program.cs file of AppHost, register a GO Feature Flag instance and consume the connection using the following methods:

var goff = builder.AddGoFeatureFlag("goff");

var myService = builder.AddProject<Projects.MyService>()
                       .WithReference(goff);

The WithReference method configures a connection in the MyService project named goff. In the Program.cs file of MyService, the GO Feature Flag connection can be consumed using:

builder.AddGoFeatureFlagClient("goff");

Then, in your service, inject GoFeatureFlagProvider and use it to interact with the GO Feature Flag API:

public class MyService(GoFeatureFlagProvider goFeatureFlagProvider)
{
    // ...
}

Additional documentation

Feedback & contributing

https://github.com/CommunityToolkit/Aspire

Product Compatible and additional computed target framework versions.
.NET 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. 
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.4.1-beta.280 87 a day ago
9.4.1-beta.279 86 a day ago
9.4.1-beta.277 124 10 days ago
9.4.1-beta.276 118 10 days ago
9.4.1-beta.275 114 10 days ago
9.4.1-beta.274 114 10 days ago
9.4.1-beta.273 110 10 days ago
9.4.1-beta.272 111 10 days ago
9.4.1-beta.271 112 10 days ago
9.4.1-beta.270 120 13 days ago
9.4.0 146 13 days ago
9.4.0-beta.269 121 13 days ago
9.4.0-beta.268 115 13 days ago
9.3.1-beta.267 120 13 days ago
9.3.1-beta.266 48 14 days ago
9.3.1-beta.265 139 18 days ago
9.3.1-beta.264 145 18 days ago
9.3.1-beta.263 143 18 days ago
9.3.1-beta.262 151 18 days ago
9.3.1-beta.260 122 22 days ago
9.3.1-beta.259 116 25 days ago
9.3.1-beta.258 120 25 days ago
9.3.1-beta.257 120 25 days ago
9.3.1-beta.256 120 25 days ago
9.3.1-beta.255 116 25 days ago
9.3.1-beta.254 118 25 days ago
9.3.1-beta.253 118 a month ago
9.3.1-beta.252 95 a month ago
9.3.1-beta.250 95 a month ago
9.3.1-beta.249 95 a month ago
9.3.1-beta.248 92 a month ago
9.3.1-beta.247 94 a month ago
9.3.1-beta.244 445 a month ago
9.3.1-beta.242 445 a month ago
9.3.1-beta.241 112 a month ago
9.3.0 145 a month ago
9.3.0-beta.239 111 a month ago
9.2.2-beta.237 114 a month ago
9.2.2-beta.236 78 2 months ago
9.2.2-beta.230 106 2 months ago
9.2.2-beta.229 108 2 months ago
9.2.2-beta.228 123 2 months ago
9.2.2-beta.227 121 2 months ago
9.2.2-beta.226 122 2 months ago
9.2.2-beta.225 118 2 months ago
9.2.2-beta.224 125 2 months ago
9.2.2-beta.223 120 2 months ago
9.2.2-beta.222 128 2 months ago
9.2.2-beta.220 116 2 months ago
9.2.2-beta.218 120 2 months ago
9.2.2-beta.217 163 2 months ago
9.2.2-beta.216 166 2 months ago
9.2.2-beta.215 166 2 months ago
9.2.2-beta.214 162 2 months ago
9.2.2-beta.213 156 2 months ago
9.2.2-beta.212 157 2 months ago
9.2.2-beta.211 164 2 months ago
9.2.2-beta.210 166 2 months ago
9.2.2-beta.208 57 2 months ago
9.2.1 99 2 months ago
9.2.1-beta.207 89 2 months ago
9.2.1-beta.206 53 2 months ago
9.2.1-beta.205 53 2 months ago
9.2.1-beta.204 51 2 months ago
9.2.1-beta.203 54 2 months ago
9.2.0 104 2 months ago
9.2.0-beta.202 51 2 months ago
9.2.0-beta.201 52 2 months ago
9.2.0-beta.199 53 2 months ago
9.2.0-beta.198 49 2 months ago
9.1.1-beta.197 56 2 months ago
9.1.1-beta.196 54 2 months ago
9.1.1-beta.195 50 2 months ago
9.1.1-beta.194 54 2 months ago
9.1.1-beta.193 56 2 months ago
9.1.1-beta.192 60 2 months ago
9.1.1-beta.191 51 2 months ago
9.1.1-beta.190 60 2 months ago
9.1.1-beta.189 54 2 months ago
9.1.1-beta.188 59 2 months ago
9.1.1-beta.187 63 2 months ago
9.1.1-beta.183 58 2 months ago
9.1.1-beta.182 63 3 months ago
9.1.1-beta.181 78 3 months ago
9.1.1-beta.180 60 3 months ago
9.1.1-beta.178 62 3 months ago
9.1.1-beta.177 64 3 months ago
9.1.1-beta.176 64 3 months ago
9.1.1-beta.175 63 3 months ago
9.1.1-beta.173 62 3 months ago
9.1.1-beta.169 62 3 months ago
9.1.1-beta.168 59 3 months ago