Пример #1
0
        public static dynamic ToDynamic(object value)
        {
            if (value is JValue)
            {
                return((value as JValue).Value);
            }

            if (value is JObject)
            {
                var gemini = new Gemini();

                foreach (var item in (value as JObject))
                {
                    gemini.SetMember(item.Key, ToDynamic(item.Value));
                }

                return(gemini);
            }

            if (value is JArray)
            {
                return(ToArray(value as JArray));
            }

            return(value);
        }
Пример #2
0
        private dynamic EntityFor(dynamic model, dynamic attributes)
        {
            var entity = new Gemini(attributes);

            entity.SetMember(ForeignKey, model.GetMember(PropertyContainingIdValue));

            return Repository.Projection(entity);
        }
Пример #3
0
        private dynamic EntityFor(dynamic model, dynamic attributes)
        {
            var entity = new Gemini(attributes);

            entity.SetMember(ForeignKey, model.GetMember(Id()));

            return(Repository.Projection(entity));
        }
Пример #4
0
        private dynamic GetNamedArgs(object[] args, string[] argNames)
        {
            var namedArgs = new Gemini();

            argNames.Zip(
                args.Skip(args.Length - argNames.Length),
                (argName, argValue) => new
            {
                name  = argName,
                value = argValue
            })
            .ForEach(arg => namedArgs.SetMember(arg.name, arg.value));

            return(namedArgs);
        }
Пример #5
0
        public static dynamic ToDynamic(object value)
        {
            if (value is JValue) return (value as JValue).Value;

            if (value is JObject)
            {
                var gemini = new Gemini();

                foreach (var item in (value as JObject)) gemini.SetMember(item.Key, ToDynamic(item.Value));

                return gemini;
            }

            if (value is JArray) return ToArray(value as JArray);

            return value;
        }
Пример #6
0
        private dynamic EntityFor(DynamicModel model, dynamic attributes)
        {
            var entity = new Gemini(attributes);

            entity.SetMember(ForeignKeyFor(model), model.GetMember(Id()));

            return repository.Projection(entity);
        }