Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="destination"></param>
        /// <param name="source"></param>
        protected virtual void HandleReferenceTypeData(object destination, IDbQueryResult source)
        {
            if (null != destination && null != source && source.HasResult)
            {
                var _destiDescriptor = OperatingSession.OperationContext.DescriptorManager.GetDescriptor(destination);
                var _resultMapper    = OperatingSession.CreateDbQueryResultMapper(_destiDescriptor.PropertyDescriptors);

                _resultMapper.Map(destination, source);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="destination"></param>
        /// <param name="source"></param>
        /// <param name="propertyDescriptor"></param>
        protected void MapReferenceTypeData(IDbQueryParameterizable destination, object source, DbQueryPropertyDescriptor propertyDescriptor)
        {
            var _sourceDescriptor = OperatingSession.OperationContext.DescriptorManager.GetDescriptor(source);
            var _ignoreProperties = propertyDescriptor.DeclaringDescriptor.IgnorePropertyDescriptors.GetDescriptors(propertyDescriptor);
            var _sourceProperties = _sourceDescriptor.PropertyDescriptors.GetDescriptors(propertyDescriptor.QueryAction, _ignoreProperties);

            if (!_sourceProperties.IsEmpty)
            {
                var _parameterMapper = OperatingSession.CreateDbQueryParameterMapper(_sourceProperties, true);

                _parameterMapper.Map(destination, source);
            }
        }