tasks.Add(
Task.Run(() =>
{
DateTimeOffset findClosestToo = new DateTimeOffset(item.date.Year, item.date.Month, item.date.Day, item.date.Hour, 0, 0, TimeSpan.Zero);
NasaPower result;
Task<NasaPower> request = null;
if ((findClosestToo - previous).Duration() > (findClosestToo - item.date).Duration())
{
request = _client.GetFromJsonAsync<NasaPower>("?start=" + start.ToString("yyyyMMdd") + "&end=" + end.AddDays(1).ToString("yyyyMMdd") + "&latitude=" + item.latitude + "&longitude=" + item.longitude + "&community=re¶meters=ALLSKY_SFC_SW_DWN&format=json&header=true&time-standard=utc");
}
else
{
request = _client.GetFromJsonAsync<NasaPower>("?start=" + start.ToString("yyyyMMdd") + "&end=" + end.AddDays(1).ToString("yyyyMMdd") + "&latitude=" + previousItem.latitude + "&longitude=" + previousItem.longitude + "&community=re¶meters=ALLSKY_SFC_SW_DWN&format=json&header=true&time-standard=utc");
}
request.Wait();
result = request.Result;
solarPotential += result.properties.parameter.ALLSKY_SFC_SW_DWN[findClosestToo.ToString("yyyyMMddHH")];
Console.WriteLine(findClosestToo + "\t\t" + result.properties.parameter.ALLSKY_SFC_SW_DWN[findClosestToo.ToString("yyyyMMddHH")] + "\t\t" + solarPotential);
lock (outputResults)
{
outputResults.Add(new object[] { findClosestToo, result.properties.parameter.ALLSKY_SFC_SW_DWN[findClosestToo.ToString("yyyyMMddHH")], solarPotential });
}
}));
tasks.Add(
Task.Run(() =>
{
DateTimeOffset findClosestToo = new DateTimeOffset(item.date.Year, item.date.Month, item.date.Day, item.date.Hour, 0, 0, TimeSpan.Zero);
NasaPower result;
Task<NasaPower> request = null;
if ((findClosestToo - previous).Duration() > (findClosestToo - item.date).Duration())
{
request = _client.GetFromJsonAsync<NasaPower>("?start=" + start.ToString("yyyyMMdd") + "&end=" + end.AddDays(1).ToString("yyyyMMdd") + "&latitude=" + item.latitude + "&longitude=" + item.longitude + "&community=re¶meters=ALLSKY_SFC_SW_DWN&format=json&header=true&time-standard=utc");
}
else
{
request = _client.GetFromJsonAsync<NasaPower>("?start=" + start.ToString("yyyyMMdd") + "&end=" + end.AddDays(1).ToString("yyyyMMdd") + "&latitude=" + previousItem.latitude + "&longitude=" + previousItem.longitude + "&community=re¶meters=ALLSKY_SFC_SW_DWN&format=json&header=true&time-standard=utc");
}
request.Wait();
result = request.Result;
solarPotential += result.properties.parameter.ALLSKY_SFC_SW_DWN[findClosestToo.ToString("yyyyMMddHH")];
Console.WriteLine(findClosestToo + "\t\t" + result.properties.parameter.ALLSKY_SFC_SW_DWN[findClosestToo.ToString("yyyyMMddHH")] + "\t\t" + solarPotential);
lock (outputResults)
{
outputResults.Add(new object[] { findClosestToo, result.properties.parameter.ALLSKY_SFC_SW_DWN[findClosestToo.ToString("yyyyMMddHH")], solarPotential });
}
}));