Iconfiguration Bind не работает с массивамиC#

Место общения программистов C#
Ответить
Anonymous
 Iconfiguration Bind не работает с массивами

Сообщение Anonymous »

Я должен получить установку строкового массива в конфигурацию при запуске веб -приложения ASP. Я получаю строковый массив от Azure KeyVault, и он работает нормально. Это включает только в код ниже для контекста. < /P>
Вот соответствующее содержание Appsettings.json: < /p>

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

{
"SecretName":"mysecrect",   // key for secret in Azure Keyvault
"secret":"hush~hush~1234",  // to be replaced
"AdminKey" : "admin-list", // key for admin list in Azure Keyvault
"Admins": ["a", "b"]        // to be replaced
}
< /code>
код в программе.   // For reference
var kvUri = $"https://abcd1234.vault.azure.net";
var client = new SecretClient(new Uri(kvUri), new DefaultAzureCredential());
var secretName = builder.Configuration["SecretName"];
var secret = client.GetSecret(secretName);                // returns "hemlig~nemlig1234"
builder.Configuration.Bind("Secret", secret.Value.Value); // this Bind works fine. the old value is replaced

// Here comes the problem
var Admkey = builder.Configuration["AdminKey"]; // returns "admin-list"
var Adm = client.GetSecret(AdmKey);             // returns "alice,bob"
var s = konAdm.Value.Value.Split(',');
var json = JsonConvert.SerializeObject(s);      // creates ["alice","bob"]
builder.Configuration.Bind("Admins", json);     // ["a", "b"] are NOT replaced with ["alice","bob"]
Как я могу использовать get builder.configuration.bind для работы с массивом?>

Подробнее здесь: https://stackoverflow.com/questions/797 ... ith-arrays
Ответить

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

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

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

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

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