using System.Collections.Generic;
public class CheckDetails
public string Name { get; set; }
public class ResourceToChecksMapping
public List<CheckDetails> Checks { get; set; } = new List<CheckDetails>();
public class ExecutionEngineInput
public List<ResourceToChecksMapping> ResourceToChecks { get; set; } = new List<ResourceToChecksMapping>();
public static IEnumerable<(ResourceToChecksMapping ResourceMapping, CheckDetails Check)> FlatternChecks(ExecutionEngineInput executionInput)
return executionInput.ResourceToChecks
resourceMapping => resourceMapping.Checks.Select(
check => (ResourceMapping: resourceMapping, Check: check)));
public static void Main()
CheckDetails checkDetails = new CheckDetails();
checkDetails.Name = "Rishabh";
ResourceToChecksMapping resourceCheckMapping = new ();
resourceCheckMapping.Checks.Add(checkDetails);
resourceCheckMapping.Checks.Add(checkDetails);
resourceCheckMapping.Checks.Add(checkDetails);
ExecutionEngineInput EEInput = new ExecutionEngineInput();
EEInput.ResourceToChecks.Add(resourceCheckMapping);
EEInput.ResourceToChecks.Add(resourceCheckMapping);
EEInput.ResourceToChecks.Add(resourceCheckMapping);
EEInput.ResourceToChecks.Add(resourceCheckMapping);
Console.WriteLine(JsonSerializer.Serialize(EEInput));
var allChecks = FlatternChecks(EEInput);
Console.WriteLine(JsonSerializer.Serialize(allChecks));