Beispiel #1
0
        /// <summary>
        /// Retrieves multiple object from the container when the match with a criteria.
        /// </summary>
        /// <param name="expression">The expression of the criteria used to determine which will be the object.</param>
        /// <returns>IEnumerable of T populated with data from Ssds.</returns>
        public IEnumerable <SsdsEntity <T> > Query <T>(Expression <Func <SsdsEntity <T>, bool> > expression) where T : class
        {
            SsdsRestFacade facade = this.CreateFacade();

            //since we are querying by kind... add it in
            expression = AddKindToExpression <T>(expression);

            SsdsExpressionVisitor translator = new SsdsExpressionVisitor();
            string criteria = translator.Translate(expression);

            var response = facade.Get(criteria);

            if (response == null)
            {
                return(null);
            }

            SsdsEntitySerializer <T>      serializer = new SsdsEntitySerializer <T>();
            IEnumerable <SsdsEntity <T> > items      = serializer.DeserializeMany(response);

            return(items);
        }
Beispiel #2
0
        public IEnumerable <SsdsEntity <T> > GetEntities <T>() where T : class, new()
        {
            SsdsEntitySerializer <T> serializer = new SsdsEntitySerializer <T>();

            return(serializer.DeserializeMany(Response));
        }