示例#1
0
        private string QueryBuilderAmount(int userId, string className, int manacost, bool isEditable)
        {
            StringBuilder mainQuery = new StringBuilder("Select Count(img) from cards c ");

            var queryBuilderHelper = new QueryBuilderHelper();

            queryBuilderHelper.UserFilter(userId, isEditable);
            queryBuilderHelper.ClassFilter(className);
            queryBuilderHelper.ManacostFilter(manacost);

            AppendJoinsListToQueryString(mainQuery, queryBuilderHelper.JoinsList);
            AppendWhereListToQueryString(mainQuery, queryBuilderHelper.WhereList);

            return(mainQuery.ToString());
        }
示例#2
0
        private string QueryBuilderCards(int userId, string className, int manacost, bool isEditable, int page, int pageSize)
        {
            StringBuilder mainQuery =
                new StringBuilder("Select c.id, c.name, c.rarity_id, c.img, c.manacost from cards c ");

            var queryBuilderHelper = new QueryBuilderHelper();

            queryBuilderHelper.UserFilter(userId, isEditable);
            queryBuilderHelper.ClassFilter(className);
            queryBuilderHelper.ManacostFilter(manacost);

            AppendJoinsListToQueryString(mainQuery, queryBuilderHelper.JoinsList);
            AppendWhereListToQueryString(mainQuery, queryBuilderHelper.WhereList);

            mainQuery.Append("Order By manacost, c.name " +
                             $"Offset {(page - 1) * pageSize} Rows Fetch next {pageSize} Rows only ");

            return(mainQuery.ToString());
        }