Ejemplo n.º 1
0
        private DateTimeOffset DetermineExpirationDate(Match match)
        {
            int hoursToAdd;

            //the severity is either a pre-set "low medium high", or a value in hours or days.
            //first, check if group 2 is used. if so, that means it's a hours/days value
            if (match.Groups[2].Success)
            {
                var valueToAdd = match.Groups[2].Value.Parse <int>();

                //now check group 3 for hours or days
                if (match.Groups[3].Value.ToLower().StartsWith("hour"))
                {
                    hoursToAdd = valueToAdd;
                }
                else
                {
                    hoursToAdd = valueToAdd * 24;
                }
            }
            else
            {
                //this is a preset value
                switch (match.Groups[1].Value.ToLower())
                {
                case "low":
                    hoursToAdd = SettingsAccessor.GetSetting <int>("LowExpirationHours");
                    break;

                case "medium":
                    hoursToAdd = SettingsAccessor.GetSetting <int>("MediumExpirationHours");
                    break;

                case "high":
                    hoursToAdd = SettingsAccessor.GetSetting <int>("HighExpirationHours");
                    break;

                default:
                    throw new Exception();
                }
            }

            return(DateTimeOffset.UtcNow.AddHours(hoursToAdd));
        }
        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            var connectionString = SettingsAccessor.GetSetting <string>("DBConnectionString");

            optionsBuilder.UseSqlite(connectionString);
        }