У меня возникла проблема при обновлении приложения с .NET Core 1.0.1 до .NET Core 2.1.Это консольное приложение, запускаемое с помощью планировщика задач Windows, которое вызывает набор веб-служб, размещенных в IIS на том же сервере.После обновления при попытке запустить его на хост-компьютере происходит сбой при первом вызове API, который возвращает 401. IIS настроен на прием анонимной проверки подлинности и проверки подлинности Windows с поставщиками согласования и NTLM.Планировщик задач устанавливает пользователя, которого должно использовать консольное приложение.Код, который делает первый вызов API, выглядит следующим образом:
using (var handler = new HttpClientHandler())
{
handler.UseDefaultCredentials = true;
var client = new HttpClient(handler);
client.DefaultRequestHeaders.Accept.Clear();
var result = await client.GetStringAsync(myUrlString);
return Newtonsoft.Json.JsonConvert.DeserializeObject<List<MyResponseObject>>(result);
}
Я также обновил проект API до .NET Core 2.1, но попытался вернуться к версии 1.0.1 при запускеконсольное приложение как 2.1 (и наоборот, работает API на 2.1 и консольное приложение на 1.0.1 также работает), чтобы быть уверенным, что это консольное приложение с проблемой.
Консольное приложение прекрасно работает при запуске с моего локального хоста с API, размещенным локально в IIS Express.
Любая помощь будет принята с благодарностью!