Exemple #1
0
        public override async Task BindAsync(DbCommand command, IList <Parameter> multiSqlQueryParametersList, int singleSqlParametersOffset, IList <Parameter> sqlQueryParametersList, QueryParameters queryParameters, ISessionImplementor session, CancellationToken cancellationToken)
        {
            cancellationToken.ThrowIfCancellationRequested();
            TypedValue typedValue  = queryParameters.NamedParameters[name];
            string     backTrackId = GetIdsForBackTrack(session.Factory).First();         // just the first because IType suppose the oders in certain sequence

            foreach (int position in sqlQueryParametersList.GetEffectiveParameterLocations(backTrackId))
            {
                await(ExpectedType.NullSafeSetAsync(command, GetPagingValue(typedValue.Value, session.Factory.Dialect, queryParameters), position + singleSqlParametersOffset, session, cancellationToken)).ConfigureAwait(false);
            }
        }
        public async Task BindAsync(DbCommand command, IList <Parameter> multiSqlQueryParametersList, int singleSqlParametersOffset, IList <Parameter> sqlQueryParametersList, QueryParameters queryParameters, ISessionImplementor session, CancellationToken cancellationToken)
        {
            cancellationToken.ThrowIfCancellationRequested();
            TypedValue typedValue  = queryParameters.NamedParameters[name];
            string     backTrackId = GetIdsForBackTrack(session.Factory).First();

            foreach (int position in sqlQueryParametersList.GetEffectiveParameterLocations(backTrackId))
            {
                await(ExpectedType.NullSafeSetAsync(command, typedValue.Value, position + singleSqlParametersOffset, session, cancellationToken)).ConfigureAwait(false);
            }
        }
        public async Task BindAsync(DbCommand command, IList <Parameter> multiSqlQueryParametersList, int singleSqlParametersOffset, IList <Parameter> sqlQueryParametersList, QueryParameters queryParameters, ISessionImplementor session, CancellationToken cancellationToken)
        {
            cancellationToken.ThrowIfCancellationRequested();
            string backTrackId = GetIdsForBackTrack(session.Factory).First();             // just the first because IType suppose the oders in certain sequence

            // The same filterName-parameterName can appear more than once in the whole query
            object value = session.GetFilterParameterValue(filterParameterFullName);

            foreach (int position in multiSqlQueryParametersList.GetEffectiveParameterLocations(backTrackId))
            {
                await(ExpectedType.NullSafeSetAsync(command, value, position, session, cancellationToken)).ConfigureAwait(false);
            }
        }