public void ReadObject(object reader, object receiver, string modelName,
                               ReadSettings settings, QName root, object serializerData)
        {
            QueryStringBuilder builder = reader.Convert <QueryStringBuilder>();
            ObjectInfo         info    = ObjectInfo.Create(receiver, modelName);

            foreach (string key in builder.AllKeys)
            {
                SerializerUtil.ReadProperty(this, reader, receiver, settings, info, key, modelName);
            }
            SerializerUtil.ReadObjectCallBack(receiver);
        }
Пример #2
0
        public static string WriteQueryString(this object receiver,
                                              string modelName, QueryStringOutput output)
        {
            if (receiver == null)
            {
                return(null);
            }

            IObjectSerializer  serializer = ObjectExtension.CreateSerializer("QueryString");
            QueryStringBuilder builder    = new QueryStringBuilder(output);
            object             writer     = serializer.CreateCustomWriter(builder);

            SerializerUtil.WriteSerializer(serializer, writer, receiver, modelName, ObjectUtil.WriteSettings, QName.Toolkit, null);

            return(builder.ToString());
        }
        public void ReadDictionary(object reader, IDictionary receiver, BaseDictionaryAttribute attribute,
                                   string modelName, ReadSettings settings, QName root, object serializerData)
        {
            SerializerUtil.CheckSimpleDictionary(attribute, this);

            QueryStringBuilder builder = reader.Convert <QueryStringBuilder>();
            var info = new DictionaryListObjectPropertyInfo(receiver, attribute, root);
            DictionaryAttribute dictAttr = attribute.Convert <DictionaryAttribute>();

            foreach (string key in builder.AllKeys)
            {
                var    value    = builder[key];
                string strValue = value.ToString();
                receiver[key] = SerializerUtil.GetPropertyObject(receiver, settings,
                                                                 info, strValue, dictAttr.AutoTrim);
            }
        }
Пример #4
0
 public UrlBuilder(Uri uri)
 {
     fBuilder     = new UriBuilder(uri);
     fQueryString = new QueryStringBuilder(fBuilder.Query);
 }
        public object CreateReader(string input, ReadSettings settings)
        {
            QueryStringBuilder builder = new QueryStringBuilder(input);

            return(builder);
        }
        private static QueryStringValue GetValue(object reader, string fieldName)
        {
            QueryStringBuilder builder = reader.Convert <QueryStringBuilder>();

            return(builder[fieldName]);
        }