Я посмотрел на несколько примеров и переполненные ответы на это, и из того, что я могу сказать, я делаю это правильно, но по какой -то причине это просто не работает для меня. Я не получаю никаких ошибок, но конфигурация не связана с объектом класса. Вот мой код как минимальный воспроизводимый пример. (По крайней мере, это воспроизводимо для меня в моей среде!) < /P>
using Microsoft.Extensions.Configuration;
namespace ConsoleApp2
{
class App2
{
public static void Main()
{
// Get configuration items from file
var config = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("config.json", optional: false, reloadOnChange: true)
.Build();
// Shows we have successfully read in the config.json file
Console.WriteLine($"(IConfiguration) Item 1 value is: {config["Item1"]}");
// Just returns a new Config object, but doesn't bind
Config _config = config.Get();
Console.WriteLine($"(config.Get()) Item 1 value is: {_config.Item1}");
// Also just returns new Config object without binding
_config = new();
config.Bind(_config);
Console.WriteLine($"(config.Bind(_config) to new object) Item 1 value is: {_config.Item1}");
// Just returns existing _config object without bound values
_config.Item1 = "still not set";
config.Bind(_config);
Console.WriteLine($"(config.Bind(_config) to existing object) Item 1 value is: {_config.Item1}");
Console.ReadLine();
}
public class Config
{
public string Item1;
}
}
}
< /code>
Файл конфигурации JSON: < /p>
{
"Item1": "some value"
}
< /code>
и свойства проекта, показывающие расширения конфигурации: < /p>
Exe
net8.0
enable
enable
PreserveNewest
< /code>
Приведите консоли: < /p>
(IConfiguration) Item 1 value is: some value
(config.Get()) Item 1 value is:
(config.Bind(_config) to new object) Item 1 value is:
(config.Bind(_config) to existing object) Item 1 value is: still not set
Подробнее здесь: https://stackoverflow.com/questions/797 ... ionbuilder
Невозможно привязать к объекту, используя конфигурацию -строителя ⇐ C#
Место общения программистов C#
-
Anonymous
1753210564
Anonymous
Я посмотрел на несколько примеров и переполненные ответы на это, и из того, что я могу сказать, я делаю это правильно, но по какой -то причине это просто не работает для меня. Я не получаю никаких ошибок, но конфигурация не связана с объектом класса. Вот мой код как минимальный воспроизводимый пример. (По крайней мере, это воспроизводимо для меня в моей среде!) < /P>
using Microsoft.Extensions.Configuration;
namespace ConsoleApp2
{
class App2
{
public static void Main()
{
// Get configuration items from file
var config = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("config.json", optional: false, reloadOnChange: true)
.Build();
// Shows we have successfully read in the config.json file
Console.WriteLine($"(IConfiguration) Item 1 value is: {config["Item1"]}");
// Just returns a new Config object, but doesn't bind
Config _config = config.Get();
Console.WriteLine($"(config.Get()) Item 1 value is: {_config.Item1}");
// Also just returns new Config object without binding
_config = new();
config.Bind(_config);
Console.WriteLine($"(config.Bind(_config) to new object) Item 1 value is: {_config.Item1}");
// Just returns existing _config object without bound values
_config.Item1 = "still not set";
config.Bind(_config);
Console.WriteLine($"(config.Bind(_config) to existing object) Item 1 value is: {_config.Item1}");
Console.ReadLine();
}
public class Config
{
public string Item1;
}
}
}
< /code>
Файл конфигурации JSON: < /p>
{
"Item1": "some value"
}
< /code>
и свойства проекта, показывающие расширения конфигурации: < /p>
Exe
net8.0
enable
enable
PreserveNewest
< /code>
Приведите консоли: < /p>
(IConfiguration) Item 1 value is: some value
(config.Get()) Item 1 value is:
(config.Bind(_config) to new object) Item 1 value is:
(config.Bind(_config) to existing object) Item 1 value is: still not set
Подробнее здесь: [url]https://stackoverflow.com/questions/79710903/unable-to-bind-to-object-using-configurationbuilder[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия