Читать переменные среды или конфигурация из библиотеки C#C#

Место общения программистов C#
Ответить
Anonymous
 Читать переменные среды или конфигурация из библиотеки C#

Сообщение Anonymous »

У меня есть библиотека C# для подключения к некоторым API. Я использую эту библиотеку в разных средах (разработчик, Sit, Uat, Prod). На основании среды или целей тестирования я хочу сохранить запросы json , которые отправляет эта библиотека. Таким образом, в переменных среды машины или клавиши в приложениях я хочу добавить глагол HTTP в сохранение. Then, I added the value in the Environment variables.
Изображение

After that, I created a simple Console application to create an instance of the class and make a Вызов. < /p>

Код: Выделить всё

using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using PSC.CSharp.Library.DemoAPIClient;

public class Program
{
public static void Main(string[] args)
{
var host = CreateHostBuilder(args).Build();
var myApi = host.Services.GetRequiredService();

myApi.AddPerson(new Person.PersonModel()
{
FirstName = "Enrico",
LastName = "Rossini"
});
}

public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureServices((hostContext, services) =>
{
services.AddHttpClient();
services.AddApiClientServices("test", "https://my.url");
});
}
< /code>
Когда класс считывает переменную с помощью этой функции < /p>
public string? ReadPermissions(string key,
string appsettingsFile = "appsettings.json")
{
if (configuration == null)
configuration = new ConfigurationBuilder()
.SetBasePath(AppContext.BaseDirectory)
.AddJsonFile(
appsettingsFile,
optional: true,
reloadOnChange: true)
.Build();

string? keyValue = Environment.GetEnvironmentVariable(key) ??
configuration[key];

if (!string.IsNullOrEmpty(keyValue))
return keyValue;
else
return null;
}
Keyvalue всегда null . Что не так с этим кодом? Почему он не может читать переменные?

Подробнее здесь: https://stackoverflow.com/questions/796 ... rp-library
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»