Я пытаюсь реализовать шаблон параметров и получаю следующую ошибку:
"Невозможно создать экземпляр типа 'System.String', поскольку в нем отсутствует конструктор publi c без параметров. "
Моя настройка такова:
У меня есть класс контроллера, подобный этому:
public class MyController : Controller
{
private readonly HttpClient _httpClient;
private readonly MyConfig _myConfig;
public MyController(HttpClient httpClient, IOptions<MyConfig> myConfig){
_httpClient = httpClient;
_myConfig = myConfig.Value; <<<<<<<<<<<< FAILS HERE
}
[HttpGet]
public async Task<IActionResult> Get(){
....
var myHttpRequest = new HttpRequestMessage(HttpMethod.Get, _myConfig.MY_ENDPOINT);
...
...
}
}
У меня есть файл JSON - мои настройки приложения, которые выглядит примерно так:
{
"Tracer": {
"Trace": {
"Default": "",
"Smari": ""
}
},
"MY_DB": "",
"MY_USER": "",
"MY_PW": "",
"MY_ENDPOINT": "https://my-test-site/offering",
"MY_CIGO": ""
}
И в моем файле Startup.cs я написал следующее:
services.Configure<MyConfig>(Configuration);
Наконец, мой класс MyConfig, который выглядит так:
public class MyConfig
{
public string MY_ENDPOINT { get; set; }
}
Кто-нибудь может увидеть, почему это не получается? Я проверил мой JSON файл на синтаксис, и он кажется правильным, поэтому я немного растерялся.