arc-provider-csharp
ARC Provider Csharp
Этот репозиторий содержит провайдера для переключения флагов функций с использованием сервера ARC.
Полезные ссылки:
Использование
Установка
Добавьте в файл строки конфигурации для доступ к NuGet репозиторию Failover
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<!--To inherit the global NuGet package sources remove the <clear/> line below -->
<clear />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
<add key="dotnet-core" value="https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json" />
***
<add key="scope" value="https://git.failover.bar/api/v4/groups/3/-/packages/nuget/index.json" />
</packageSources>
<packageRestore>
<add key="enabled" value="True" />
<add key="automatic" value="True" />
</packageRestore>
<bindingRedirects>
<add key="skip" value="False" />
</bindingRedirects>
<packageManagement>
<add key="format" value="1" />
<add key="disabled" value="True" />
</packageManagement>
<packageSourceCredentials>
***
<scope>
<add key="Username" value="ro_failover" />
<add key="ClearTextPassword" value="8kyZxu6xBsxbzcmjyB3z" />
</scope>
***
</packageSourceCredentials>
</configuration>
Установите пакет
dotnet add package Arc.Provider
Конфигурация
Добавьте секцию в конфигурацию запуска appsettings.json
должен содержать идентификатор приложения из ARCAppIdиспользуется для переназначения адреса сервера, если тот развёрнут независимоArcServer
Регистрация сервисов
Управление переключением функция в ARC основани на .NET Core DI. Мы можем зарегистрировать сервисы управления функциями, используя стандартные контракты.
IFeatureValues
Если аргументы для метода класса не переданы, контекст IFeatureValues может быть использован для передачи значений для контекстного фильтра Arc с использованием промежуточного слоя. Ознакомьтесь с примером.
Примеры
Вы можете найти пример приложения в папке [examples].
Приложение ослуживает два маршрута:
- Http Get
, для которого используется аттрибут/flags/TEST_KEY?value1=42&value2=36bиFeatureGateиз контекста для запроса функцийIFeatureValues - Http Post
, для которого напрямую используется тело запроса в формате JSON as массив пар ключ-значение для запроса функций/flags/TEST_KEY