예제 #1
0
        /// <summary>
        /// Introduces a sub cube that will be used in the query.
        /// </summary>
        /// <param name="subCube">The expression to create the sub cube.</param>
        /// <returns></returns>
        public IMdxQueryable <T> FromSubCube(Expression <Func <T, IEnumerable <ICubeObject> > > subCube)
        {
            var comp = new MdxComponent(Component.SubCube)
            {
                Creator = subCube
            };

            this._components.Add(comp);

            return(this);
        }
예제 #2
0
        /// <summary>
        /// Introduces a new query scoped calculated set and stores it to be queried.
        /// </summary>
        /// <param name="name">The name of the calculated set.</param>
        /// <param name="axisNumber">The axis number this query should be queried in. If the value is null, it will not be placed on any axis.</param>
        /// <param name="setCreator">The expression to create this calculated set.</param>
        /// <returns></returns>
        public IMdxQueryable <T> WithSet(string name, byte?axisNumber, Expression <Func <T, Set> > setCreator)
        {
            var comp = new MdxComponent(Component.CreatedSet, name, setCreator)
            {
                Axis             = axisNumber,
                DeclarationOrder = this._createdDepth++
            };

            this._components.Add(comp);

            return(this);
        }