Ascar, все спасибо, навели на мысль.
Проблема была в том , что база "car.db" не читалась, а после того как изменить на "cars.sqlite" все отлично работает. Только не очень понятно почему
Ascar, try
{
var tasks = new List();
int count = 10;
while (count-- > 0)
{
var taskToGetMarks = Task.Run(async () =>
{
try
{
string page = await http.GetStringAsync(Url);
Doc.LoadHtml(page);
var table = Doc.DocumentNode.SelectSingleNode("//table[@class='tck']");
var rows = table.Descendants("tr");
//Parallel.ForEach(rows, node =>
foreach (var node in rows)
{ //pages
var hrefs = node.SelectNodes(".//a");
string[] array = node.InnerText.Trim().Split(new[] { "\r\n", "\r", "\n" }, StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < array.Length - 1; i++)
{
TradeMark tradeMark = new TradeMark
{
TradeMarkName = array[i],
TradeMarkUrl = "www.autosvit.com.ua" + hrefs[i].GetAttributeValue("href", "/tech")
};
tradeMarks.Add(tradeMark);
Console.WriteLine(tradeMark.TradeMarkName);
listOfMarksHrefs.Add(tradeMark.TradeMarkUrl);
}
}
//is it better to write each item or list of items?
using (var context = new CarEntitiesContext())
{
tradeMarks.ForEach(s => context.TradeMarks.Add(s));
await context.SaveChangesAsync();
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
});
tasks.Add(taskToGetMarks);
}
await Task.WhenAll(tasks);
await GetAutomobileFamily();
}
catch(Exception ex)
{
Console.Write(ex);
}
} сейчас выходит из функции на await Task.WhenAll(tasks); а другая функция не запускается