Example #1
0
        /// <summary>
        /// Представляет объект Directive Treshold в виде массива байтов для хранения в базе данных
        /// </summary>
        /// <returns></returns>
        public byte[] ToBinary()
        {
            List <byte> data = new List <byte>(SerializedDataLength);

            data.AddRange(DbTypes.Int64ToByteArray(EffectiveDate.Ticks));
            data.AddRange(FirstPerformanceSinceNew.ConvertToByteArray());
            data.AddRange(FirstPerformanceSinceEffectiveDate.ConvertToByteArray());
            data.AddRange(FirstNotification.ConvertToByteArray());
            data.Add((byte)(FirstPerformanceConditionType == ThresholdConditionType.WhicheverLater ? 1 : 0));
            data.Add((byte)(PerformRepeatedly ? 1 : 0));
            data.AddRange(RepeatInterval.ConvertToByteArray());
            data.AddRange(RepeatNotification.ConvertToByteArray());
            data.Add((byte)(RepeatPerformanceConditionType == ThresholdConditionType.WhicheverLater ? 1 : 0));
            return(data.ToArray());
        }
Example #2
0
        /// <summary>
        /// Возвращает условие первого выполнения директиыв
        /// </summary>
        /// <returns></returns>
        private string FirstPerformanceToString()
        {
            string res = "";

            // ресурсы заполнены
            // выводим результат
            if (!FirstPerformanceSinceNew.IsNullOrZero())
            {
                res = LifelengthToString(FirstPerformanceSinceNew, "f.p");
            }
            if (!FirstNotification.IsNullOrZero())
            {
                res += LifelengthToString(FirstNotification, "f.p.n");
            }

            return("Perform at " + res.Trim());
        }