class Program
{
static void Main(string[] args)
{
var options = GenerateRulesBasedResults(true, false, false, false, true);
foreach (var option in options)
{
Console.WriteLine (option.ToString());
/* Ford
* BMW
* Mercedes
*/
}
Console.Read();
}
public static List<CarSale> GenerateRulesBasedResults(bool isCruiseControl, bool isAutomatic,
bool isUnderWarranty, bool isOnSale, bool isOnRoadOffSale)
{
List<CarSale> options;
Results.TryGetValue(Tuple.Create(isCruiseControl, isAutomatic, isUnderWarranty, isOnSale, isOnRoadOffSale), out options);
return options;
}
//I/P Rule Case Condition variant
private static readonly Tuple<bool, bool, bool, bool, bool> RuleCaseCondition1 = Tuple.Create(true, false, false, false, true);
private static readonly Tuple<bool, bool, bool, bool, bool> RuleCaseCondition2 = Tuple.Create(false, true, false, false, true);
//O/P Rule based results.
private static readonly Dictionary<Tuple<bool, bool, bool, bool, bool>, List<CarSale>> Results =
new Dictionary<Tuple<bool, bool, bool, bool, bool>, List<CarSale>>
{
{ RuleCaseCondition1, new List<CarSale> { CarSale.Ford , CarSale.BMW, CarSale.Mecedes} },
{ RuleCaseCondition2, new List<CarSale> { CarSale.Suzuki , CarSale.Mazda} },
};
public enum CarSale
{
Honda,
BMW,
Mazda,
Suzuki,
Mecedes,
Wolkswagen,
Ford
}
No comments :
Post a Comment