Exemple #1
0
        /// <summary>
        /// Cleanses all properties marked with CleanseFor attribute
        /// </summary>
        /// <param name="classToCleanse"></param>
        public static void CleanseAll(object classToCleanse)
        {
            // Get properties with CleanseFor() attribute
            IEnumerable <PropertyInfo> props = classToCleanse.GetPropertiesByAttribute(typeof(CleanseFor));

            foreach (var item in props)
            {
                var      ValueToSet     = item.GetValue(classToCleanse, null).ToStringSafe();
                Cleanser cleanserWorker = CleanserFactory.Construct(item.GetAttributeValue <CleanseFor, CleanserIDs>(CleanserIDs.Default), ValueToSet);
                ValueToSet = cleanserWorker.Cleanse();
                item.SetValue(classToCleanse, ValueToSet);
            }
        }