public DeserializerFactory() { _valueTypeDeser = new ValueTypeDeserializer(); _defaultDeser = new EntityDeserializer(); _dynamicDeser = new DynamicDeserializer(); _multipleDeser = new MultipleResultDeserializer(this); }
public SmartSqlMapper(SmartSqlOptions options) { SmartSqlOptions = options; SmartSqlOptions.Setup(); _logger = LoggerFactory.CreateLogger <SmartSqlMapper>(); _dataReaderDeserializer = DeserializerFactory.Create(); NestedObjectConvertFactory convertFactory = new NestedObjectConvertFactory(); _nestedObjectConverter = new NestedObjectConverter(convertFactory); }
public IDataReaderDeserializer Create() { if (_dataReaderDeserializer == null) { lock (this) { if (_dataReaderDeserializer == null) { _dataReaderDeserializer = new EmitDataReaderDeserializer(); } } } return(_dataReaderDeserializer); }
public IDataReaderDeserializer Create() { if (_dataReaderDeserializer == null) { lock (syncRoot) { if (_dataReaderDeserializer == null) { _dataReaderDeserializer = new DapperDataReaderDeserializer(); } } } return(_dataReaderDeserializer); }
public SmartSqlBuilder AddDeserializer(IDataReaderDeserializer deserializer) { DataReaderDeserializers.Add(deserializer); return(this); }
public static object Deserialize(Type resultType, IDataReaderDeserializer deserializer, ExecutionContext executionContext) { return(GetImpl(resultType)(deserializer, executionContext)); }
public void Add(IDataReaderDeserializer deserializer) { _deserCache.Add(deserializer); }
public async Task <IMultipleResult> InitDataAsync(RequestContext requestContext, IDataReaderWrapper dataReaderWrapper, IDataReaderDeserializer dataReaderDeserializer) { foreach (var resultMapKV in _resultDataMap) { var resultMap = resultMapKV.Value; switch (resultMap.Type) { case ResultMap.ResultTypeType.Single: { resultMap.Result = await dataReaderDeserializer.ToSingleAsync(requestContext, dataReaderWrapper, resultMap.ResultType, false); break; } case ResultMap.ResultTypeType.Enumerable: { resultMap.Result = await dataReaderDeserializer.ToEnumerableAsync(requestContext, dataReaderWrapper, resultMap.ResultType, false); break; } } await dataReaderWrapper.NextResultAsync(); } return(this); }
public DeserializerFactory() { _Default_Deserializer = new EntityDeserializer(); }
public T ToNested <T>(RequestContext context, IDataReaderWrapper dataReaderWrapper, IDataReaderDeserializer dataReaderDeserializer) { var convert = _nestedObjectConvertFactory.CreateNestedObjectConvert(context, typeof(T)); return((T)convert(context, dataReaderWrapper, dataReaderDeserializer)); }