Пример #1
0
        private object GetNextValue(object previousValue)
        {
            if (NextValueGenerator != null)
            {
                return(NextValueGenerator.GetNextValue());
            }

            if (typeof(T) == typeof(double))
            {
                return((double)previousValue + (double)DefaultStep);
            }
            if (typeof(T) == typeof(int))
            {
                return((int)previousValue + (int)DefaultStep);
            }
            if (typeof(T) == typeof(float))
            {
                return((float)previousValue + (float)DefaultStep);
            }
            if (typeof(T) == typeof(long))
            {
                return((long)previousValue + (long)DefaultStep);
            }
            if (typeof(T) == typeof(short))
            {
                return((short)previousValue + (short)DefaultStep);
            }
            if (typeof(T) == typeof(DateTime))
            {
                return(((DateTime)previousValue).Add((TimeSpan)DefaultStep));
            }
            if (typeof(T) == typeof(TimeSpan))
            {
                return(((TimeSpan)previousValue).Add((TimeSpan)DefaultStep));
            }
            return(null);
        }
Пример #2
0
        private object GetNextValue(object previousValue)
        {
            if (NextValueGenerator != null)
            {
                return(NextValueGenerator.GetNextValue());
            }

            if (typeof(T) == typeof(double))
            {
                return((double)previousValue + (double)DefaultStep);
            }
            if (typeof(T) == typeof(int))
            {
                return((int)previousValue + (int)DefaultStep);
            }
            if (typeof(T) == typeof(float))
            {
                return((float)previousValue + (float)DefaultStep);
            }
            if (typeof(T) == typeof(long))
            {
                return((long)previousValue + (long)DefaultStep);
            }
            if (typeof(T) == typeof(short))
            {
                return((short)previousValue + (short)DefaultStep);
            }
            if (typeof(T) == typeof(DateTime))
            {
                return(((DateTime)previousValue).Add((TimeSpan)DefaultStep));
            }
            if (typeof(T) == typeof(TimeSpan))
            {
                return(((TimeSpan)previousValue).Add((TimeSpan)DefaultStep));
            }
            throw new InvalidOperationException(string.Format("Unable to generate next value for variable of type {0}. Add a NextValueGenerator to the variable", typeof(T)));
        }