Exemplo n.º 1
0
        public static PropertyDataRetrieversCollection ToPropertyDataRetrievers(this DocumentEntityDefinition definition)
        {
            var entityProperties = new PropertyDataRetrieversCollection();

            foreach (var fieldDefinition in definition.FieldMappings.Values)
            {
                var valueType = fieldDefinition.ParserDefinition.FinalType;

                IValueConverter converter = null;

                if (valueType == typeof(DateTime))
                {
                    converter = new DateTimeValueConverter(fieldDefinition.ParserDefinition.ParsingFormats);
                }

                var sourceValueRetriever = new RowValueRetriever(fieldDefinition.Name)
                {
                    Converter = converter
                };

                var retriever = new PropertyDataRetriever(fieldDefinition.Name, sourceValueRetriever);

                entityProperties.Add(retriever);
            }

            return(entityProperties);
        }
Exemplo n.º 2
0
        public DataRecordSource(IRowsCollectionReaderFactory rawReaderFactory,
                                PropertyDataRetrieversCollection retrievers)
        {
            if (rawReaderFactory == null)
            {
                throw new ArgumentNullException("rawReaderFactory");
            }

            _rawReaderFactory = rawReaderFactory;
            _retrievers       = retrievers;
        }