예제 #1
0
        /// <inheritdoc />
        public IEnumerable <Echo> Select(IRequest <Echo> request)
        {
            if (request == null)
            {
                throw new ArgumentNullException(nameof(request));
            }
            var members = request.Conditions.Select(c => new JProperty(c.Key, c.Value));
            var body    = request.GetBody().Deserialize <JObject>();

            if (body != null)
            {
                members = members.Union <JProperty>(body.SelectMany(item => item.Properties()), EqualityComparer);
            }
            var echo = new Echo(members);

            TypeCache.ClearTermsFor <Echo>();
            yield return(echo);
        }