Я взял Службу Windows, изменил ее, чтобы она стала Консольным приложением, затем опубликовал ее как WebJob. Когда он выполняет команду PostAsync, он не получает ответа И не выполняет Console.WriteLine сразу же после команды PostAsync.
Вот код:
Console.WriteLine("Querying for access credentials...");
HttpResponseMessage responsePut = null;
try
{
Console.WriteLine("PostAsync call");
responsePut = await client.PostAsync("/oauth/access_token", new StringContent("grant_type=client_credentials", Encoding.UTF8, "application/x-www-form-urlencoded"));
Console.WriteLine("Returned from PostAsync call");
}
catch (System.Net.Http.HttpRequestException err)
{
Console.WriteLine("Unable to connect to the server (HttpRequestException)..." + err.InnerException);
throw new Exception("Unable to connect to the server (HttpRequestException)..." + err.InnerException);
}
catch (Exception err)
{
Console.WriteLine("Unable to connect to the server (Exception)..." + err.Message + "::" + err.InnerException);
throw new Exception("Unable to connect to the server (Exception)..." + err.InnerException);
}
Журнал консоли Azure выглядит следующим образом:
[05/01/2018 05:45:31 > e559bd: INFO] Querying for access credentials...
[05/01/2018 05:45:31 > e559bd: INFO] PostAsync call
[05/01/2018 05:45:32 > e559bd: SYS INFO] Status changed to Success
[05/01/2018 05:45:32 > e559bd: SYS INFO] Process went down, waiting for 60 seconds
Этот код работает как служба Windows и как консольное приложение Windows, но не работает в Azure.
Что я могу сделать, чтобы определить, что Azure делает со мной, и / или предложить сделать это по-другому.