public static double ExecuteQuery(this PlanningItem pi, MayoQuery query, params string[] ss)
        {
            var structures = ss.Select(structId =>
            {
                return(new
                {
                    Name = structId,
                    Structure = pi.GetStructureSet()?.Structures?.FirstOrDefault(s => s.Id == structId)
                });
            })
                             .ToArray();

            if (structures.Any(s => s.Structure == null))
            {
                var names = structures.Where(s => s.Structure == null).Select(s => s.Name).ToArray();
                throw new ArgumentNullException($"Structures : " + string.Join(", ", names) + "could not be found.");
            }
            //All ok, run query
            return(query.RunQuery(pi, structures.Select(s => s.Structure)));
        }
Beispiel #2
0
 public static double ExecuteQuery(this PlanningItem pi, Structure s, MayoQuery query)
 {
     return(query.RunQuery(pi, new[] { s }));
 }
 public static double ExecuteQuery(this PlanningItem pi, MayoQuery query, params Structure[] ss)
 {
     return(query.RunQuery(pi, ss));
 }
Beispiel #4
0
 public static double ExecuteQuery(this PlanningItem pi, IEnumerable <Structure> ss, MayoQuery query)
 {
     return(query.RunQuery(pi, ss));
 }