Sage.Integration.Northwind.Adapter.Data.QueryFilterBuilder.BuildSqlStatement C# (CSharp) Method

BuildSqlStatement() public method

public BuildSqlStatement ( RequestContext requestContext, string &additionalClause, System.Data.OleDb.OleDbParameter &oleDbParameters ) : void
requestContext Sage.Integration.Northwind.Adapter.Common.RequestContext
additionalClause string
oleDbParameters System.Data.OleDb.OleDbParameter
return void
        public void BuildSqlStatement(RequestContext requestContext, out string additionalClause, out OleDbParameter[] oleDbParameters)
        {
            oleDbParameters = null;
            additionalClause = string.Empty;
            List<OleDbParameter> oleDbParameterList = new List<OleDbParameter>();

            if (requestContext.SdataUri.WhereExpression != null)
            {
                string expression = _expressionParser.GetExpressionDispatch(requestContext.SdataUri.WhereExpression, ref oleDbParameterList);
                if (!string.IsNullOrEmpty(expression))
                {
                    additionalClause = string.Format("where ( {0} )", expression);
                    oleDbParameters = oleDbParameterList.ToArray();
                }
            }
            if (!String.IsNullOrEmpty(requestContext.SdataUri.OrderBy))
            {
                additionalClause += " " + _orderByParser.Get(requestContext.SdataUri.OrderBy);
            }
        }

Usage Example

コード例 #1
0
        public virtual String[] GetFeed()
        {
            string whereClause = string.Empty;

            OleDbParameter[] oleDbParameters = null;

            if (this is IEntityQueryWrapper)
            {
                QueryFilterBuilder queryFilterBuilder = new QueryFilterBuilder((IEntityQueryWrapper)this);

                queryFilterBuilder.BuildSqlStatement(_context, out whereClause, out oleDbParameters);
            }

            Token emptyToken = new Token();


            List <Identity> identities = new List <Identity>();

            if (String.IsNullOrEmpty(_context.ResourceKey))
            {
                identities = _entity.GetAll(_context.Config, whereClause, oleDbParameters);
            }
            else
            {
                identities.Add(GetIdentity(_context.ResourceKey));
            }

            string[] result = new string[identities.Count];
            for (int i = 0; i < identities.Count; i++)
            {
                result[i] = identities[i].Id;
            }

            return(result);
        }
All Usage Examples Of Sage.Integration.Northwind.Adapter.Data.QueryFilterBuilder::BuildSqlStatement