Exemplo n.º 1
0
        public void WriteReport(IValueReport report)
        {
            foreach (var pair in _jObject)
            {
                var key = pair.Key;

                pair.IfIs <JValue>(value => report.Value(key, value.Value <string>()));

                pair.IfIs <JObject>(jo =>
                {
                    report.StartChild(key);

                    var child = new JObjectValues(jo);
                    child.WriteReport(report);

                    report.EndChild();
                });

                pair.IfIs <JArray>(ja =>
                {
                    int i = 0;
                    foreach (JObject jo in ja.OfType <JObject>())
                    {
                        report.StartChild(key, i);

                        var child = new JObjectValues(jo);
                        child.WriteReport(report);

                        report.EndChild();
                    }
                });
            }
        }
Exemplo n.º 2
0
        public T Read(string mimeType, IFubuRequestContext context)
        {
            var json   = context.Services.GetInstance <NewtonSoftJsonReader>().GetInputText();
            var values = new JObjectValues(json);

            return((T)context.Services.GetInstance <IObjectResolver>().BindModel(typeof(T), values).Value);
        }
Exemplo n.º 3
0
        public async Task <T> Read(string mimeType, IFubuRequestContext context)
        {
            var json = await context.Services.GetInstance <NewtonSoftJsonReader>().GetInputText().ConfigureAwait(false);

            var values = new JObjectValues(json);

            var value = context.Services.GetInstance <IObjectResolver>().BindModel(typeof(T), values).Value.As <T>();

            return(value);
        }