示例#1
0
        internal void PersistenceParam(string name, object value, PersistenceParameterOptions options)
        {
            PersistenceParameter param;

            if (options != null || !this.PersistenceParameters.TryGetValue(name, out param))
            {
                this.PersistenceParameters[name] = param = new PersistenceParameter(name, value, options);
            }
            param.Value = value;
        }
示例#2
0
        public SubqueryTemplate ParamFromInput(string paramName, string inputName,
                                               MappingDirection direction          = MappingDirection.Outbound,
                                               Func <object, object> convertOut    = null,
                                               Func <object, object> convertIn     = null,
                                               PersistenceParameterOptions options = null)
        {
            // Define it
            this.Param(paramName, null, direction, options);

            BeforeExecute(sq =>
            {
                QueryInput p = sq.GetQueryInput(inputName);
                sq.Param(paramName, convertOut == null ? p.Value : convertOut(p.Value));
            });

            return(this);
        }
        public Subquery PersistenceParam(string name, string fromQueryParam, Func <object, object> convertQueryParam = null, PersistenceParameterOptions options = null)
        {
            QueryParameter param = GetQueryParam(fromQueryParam);

            object val = param.Value;

            if (convertQueryParam != null)
            {
                val = convertQueryParam(val);
            }
            return(this.PersistenceParam(name, val, options));
        }
 public new Subquery PersistenceParam(string name, object value, PersistenceParameterOptions options = null)
 {
     base.PersistenceParam(name, value, options);
     return(this);
 }
示例#5
0
 public SubqueryTemplate PersistenceParam(string name, string fromQueryParam, Func <object, object> convertQueryParam = null, PersistenceParameterOptions options = null)
 {
     this.PersistenceParam(name, null, options);
     BeforeExecute(sq => sq.PersistenceParam(name, fromQueryParam, convertQueryParam));
     return(this);
 }
示例#6
0
 public new SubqueryTemplate PersistenceParam(string name, object defaultValue, PersistenceParameterOptions options = null)
 {
     base.PersistenceParam(name, defaultValue, options);
     return(this);
 }
示例#7
0
 public SubqueryTemplate Param(string paramName, object defaultValue = null, MappingDirection direction = MappingDirection.Outbound, PersistenceParameterOptions options = null)
 {
     this.PersistenceAction.Parameters[paramName] = new PersistenceParameter(paramName, defaultValue, direction, options);
     return(this);
 }