public static List <RiskType> GetRiskPriority(RiskType riskType) { var result = new List <RiskType>(); result.Add(riskType); if (riskType == RiskType.VeryLow) { result.Add(RiskType.Low); result.Add(RiskType.Medium); result.Add(RiskType.High); result.Add(RiskType.VeryHigh); } else if (riskType == RiskType.Low) { result.Add(RiskType.VeryLow); result.Add(RiskType.Medium); result.Add(RiskType.High); result.Add(RiskType.VeryHigh); } else if (riskType == RiskType.Medium) { result.Add(RiskType.Low); result.Add(RiskType.High); result.Add(RiskType.VeryLow); result.Add(RiskType.VeryHigh); } else if (riskType == RiskType.High) { result.Add(RiskType.Medium); result.Add(RiskType.VeryHigh); result.Add(RiskType.Low); result.Add(RiskType.VeryLow); } else { result.Add(RiskType.High); result.Add(RiskType.Medium); result.Add(RiskType.Low); result.Add(RiskType.VeryLow); } return(result); }
public static RiskType Get(int goalRisk, int goalOptionRisk) { RiskType optionRisk = Get(goalOptionRisk); switch (goalRisk) { case 1: if (optionRisk == High || optionRisk == VeryHigh) { return(Low); } else { return(VeryLow); } case 2: if (optionRisk == VeryLow) { return(VeryLow); } else if (optionRisk == VeryHigh) { return(Medium); } else { return(Low); } case 3: if (optionRisk == VeryLow) { return(Low); } else if (optionRisk == VeryHigh) { return(High); } else { return(Medium); } case 4: if (optionRisk == VeryLow) { return(Medium); } else if (optionRisk == VeryHigh) { return(VeryHigh); } else { return(High); } case 5: if (optionRisk == Low || optionRisk == VeryLow) { return(High); } else { return(VeryHigh); } default: throw new ArgumentException("Invalid risk."); } }