Следующие строки терпят неудачу в указанной строке.`await HttpClient.GetAsync()` терпит неудачу - приложение командной строки DNX
using (var ht = new HttpClient())
{
var r = await ht.GetAsync(RootUrl + Id.ToString()); <-----
Page = await r.Content.ReadAsStringAsync();
}
Никаких исключений, никаких ошибок, нет ничего. Выполнение просто останавливается, не ударяет точку останова на следующей строке, и приложение завершает работу. Окружение в try/catch не вызывает уловки.
Выполнение приложения командной строки DNX .xproj.
Такое же поведение, как и для coreclr, так и для полного. Началось как через VS, так и с командной строки DNX.
Что, черт возьми, происходит?
Project.json выглядит следующим образом:
{
"version": "1.0.0-*",
"description": "Scrapers Console Application",
"authors": [ "Kaelan" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"dependencies": {
"System.Net.Http": "4.0.0-*",
"HtmlAgilityPack": "1.4.9"
},
"commands": {
"Scrapers": "Scrapers"
},
"frameworks": {
"dnx451": { }
}
}
Edit: Полный код я работаю с. Взял кусок фактического проекта для тестирования (поддерживает ту же проблему).
public class Program
{
const string RootUrl = "<-snipped->";
public async void Main(string[] args)
{
var Id = 244;
var Page = "";
using (var ht = new HttpClient())
{
var r = await ht.GetAsync(RootUrl + Id.ToString());
Debug.Write(r.StatusCode + " on page: " + Id.ToString());
Page = await r.Content.ReadAsStringAsync();
}
Console.ReadLine();
}
}
Почтовый исполняемый код. – usr
Не добавляет много, но см. Отредактированный –
Не должно ли быть предупреждение компилятора для async Main? Кстати, репо указывало на решение. См. Ответ. – usr