Fixed exception with .ElementAt(0) call at empty collection

This commit is contained in:
KharchenkoVV 2021-09-02 10:13:20 +05:00
parent a7962492af
commit 1debac9505

View File

@ -469,10 +469,14 @@ namespace AsbCloudInfrastructure.Services
}; };
private static IEnumerable<OperationParams> MakeOperationsExt(IEnumerable<WellOperation> operations) private static IEnumerable<OperationParams> MakeOperationsExt(IEnumerable<WellOperation> operations)
{
var ops = new List<OperationParams>();
if (operations.Any())
{ {
var sortedOperations = operations.OrderBy(o => o.StartDate); var sortedOperations = operations.OrderBy(o => o.StartDate);
var count = operations.Count(); var count = operations.Count();
var ops = new List<OperationParams>(count); ops = new List<OperationParams>(count);
var item = operations.ElementAt(0); var item = operations.ElementAt(0);
var wellDepth = item.WellDepth; var wellDepth = item.WellDepth;
var pre = new OperationParams(item); var pre = new OperationParams(item);
@ -480,7 +484,7 @@ namespace AsbCloudInfrastructure.Services
for (int i = 1; i < count; i++) for (int i = 1; i < count; i++)
{ {
item = operations.ElementAt(i); item = operations.ElementAt(i);
current = new OperationParams(item){ WellDepth = Helper.Max(wellDepth, item.WellDepth) }; current = new OperationParams(item) { WellDepth = Helper.Max(wellDepth, item.WellDepth) };
pre.DeltaDepth = current.WellDepth - wellDepth; pre.DeltaDepth = current.WellDepth - wellDepth;
wellDepth = current.WellDepth; wellDepth = current.WellDepth;
pre.Hours = (current.Start - pre.Start).TotalHours; pre.Hours = (current.Start - pre.Start).TotalHours;
@ -488,6 +492,8 @@ namespace AsbCloudInfrastructure.Services
pre = current; pre = current;
} }
ops.Add(current); ops.Add(current);
}
return ops; return ops;
} }
} }