Exemple #1
0
        internal static IEnumerable <string> GetOutputRawVariables(IEnumerable <DataColumn> columns)
        {
            List <string> list = new List <string>();

            foreach (DataColumn dataColumn in columns)
            {
                List <string> outputDepVariables = DDIHelper.GetOutputDepVariables(dataColumn);
                if (outputDepVariables == null || outputDepVariables.Count == 0)
                {
                    list.Add(dataColumn.ColumnName);
                }
                else
                {
                    list.AddRange(outputDepVariables);
                }
            }
            return(list.Distinct <string>());
        }
Exemple #2
0
        internal override void LoadMetaData(DataRow input, DataTable dataTable, DataObjectStore store, IList <string> outputVariables, out Dictionary <string, ValidatorInfo[]> validators, out IList <string> readOnlyProperties, out IList <string> notAccessProperties, Service service)
        {
            base.LoadMetaData(input, dataTable, store, outputVariables, out validators, out readOnlyProperties, out notAccessProperties, service);
            bool flag = true.Equals(dataTable.Rows[0]["IsReadOnly"]);

            foreach (object obj in dataTable.Columns)
            {
                DataColumn dataColumn = (DataColumn)obj;
                Variable   variable   = dataColumn.ExtendedProperties["Variable"] as Variable;
                if (variable != null)
                {
                    if (outputVariables == null || outputVariables.Contains(dataColumn.ColumnName, StringComparer.OrdinalIgnoreCase))
                    {
                        if (this.IncludeValidator)
                        {
                            ValidatorInfo[] array = ValidatorHelper.ValidatorsFromPropertyDefinition(dataColumn.ExtendedProperties["PropertyDefinition"] as ProviderPropertyDefinition);
                            if (array.Length != 0)
                            {
                                validators[dataColumn.ColumnName] = array;
                            }
                        }
                        if (this.IncludeNotAccessProperty)
                        {
                            bool?flag2 = this.IsVariableAccessible(input, dataTable, store, variable, DDIHelper.GetOutputDepVariables(dataColumn));
                            if (flag2.IsFalse())
                            {
                                notAccessProperties.Add(variable.Name);
                            }
                        }
                    }
                    if (this.IncludeReadOnlyProperty)
                    {
                        bool?flag3 = this.IsVariableSettable(input, dataTable, store, variable, service, DDIHelper.GetCodeBehindRegisteredDepVariables(dataColumn));
                        if (flag3.IsFalse() || flag)
                        {
                            readOnlyProperties.Add(variable.Name);
                        }
                    }
                }
            }
        }