/// <summary> /// Creates properties for the given <see cref="JsonContract"/>. /// </summary> /// <param name="type">The type to create properties for.</param> /// /// <param name="memberSerialization">The member serialization mode for the type.</param> /// <returns>Properties for the given <see cref="JsonContract"/>.</returns> protected virtual IList <JsonProperty> CreateProperties(Type type, MemberSerialization memberSerialization) { List <MemberInfo> members = GetSerializableMembers(type); if (members == null) { throw new JsonSerializationException("Null collection of seralizable members returned."); } JsonPropertyCollection properties = new JsonPropertyCollection(type); foreach (MemberInfo member in members) { JsonProperty property = CreateProperty(member, memberSerialization); if (property != null) { properties.AddProperty(property); } } IList <JsonProperty> orderedProperties = properties.OrderBy(p => p.Order ?? -1).ToList(); return(orderedProperties); }
protected virtual IList <JsonProperty> CreateProperties(Type type, MemberSerialization memberSerialization) { List <MemberInfo> serializableMembers = this.GetSerializableMembers(type); if (serializableMembers == null) { throw new JsonSerializationException("Null collection of seralizable members returned."); } JsonPropertyCollection jsonPropertyCollection = new JsonPropertyCollection(type); foreach (MemberInfo current in serializableMembers) { JsonProperty jsonProperty = this.CreateProperty(current, memberSerialization); if (jsonProperty != null) { jsonPropertyCollection.AddProperty(jsonProperty); } } return(jsonPropertyCollection.OrderBy(delegate(JsonProperty p) { int?order = p.Order; if (!order.HasValue) { return -1; } return order.GetValueOrDefault(); }).ToList <JsonProperty>()); }
protected virtual IList <JsonProperty> CreateProperties(Type type, MemberSerialization memberSerialization) { List <MemberInfo> serializableMembers = GetSerializableMembers(type); if (serializableMembers == null) { throw new JsonSerializationException("Null collection of seralizable members returned."); } JsonPropertyCollection jsonPropertyCollection = new JsonPropertyCollection(type); foreach (MemberInfo item in serializableMembers) { JsonProperty jsonProperty = CreateProperty(item, memberSerialization); if (jsonProperty != null) { jsonPropertyCollection.AddProperty(jsonProperty); } } return(jsonPropertyCollection.OrderBy((JsonProperty p) => p.Order ?? (-1)).ToList()); }
protected virtual IList <JsonProperty> CreateProperties(Type type, MemberSerialization memberSerialization) { List <MemberInfo> serializableMembers = this.GetSerializableMembers(type); if (serializableMembers == null) { throw new JsonSerializationException("Null collection of seralizable members returned."); } JsonPropertyCollection jsonPropertyCollection = new JsonPropertyCollection(type); foreach (MemberInfo member in serializableMembers) { JsonProperty jsonProperty = this.CreateProperty(member, memberSerialization); if (jsonProperty != null) { jsonPropertyCollection.AddProperty(jsonProperty); } } return(jsonPropertyCollection.OrderBy(delegate(JsonProperty p) { int?order = p.Order; return (order == null) ? -1 : order.Value; }).ToList <JsonProperty>()); }
protected virtual IList <JsonProperty> CreateProperties(Type type, MemberSerialization memberSerialization) { List <MemberInfo> serializableMembers = this.GetSerializableMembers(type); if (serializableMembers == null) { throw new JsonSerializationException("Null collection of seralizable members returned."); } JsonPropertyCollection source = new JsonPropertyCollection(type); foreach (MemberInfo info in serializableMembers) { JsonProperty property = this.CreateProperty(info, memberSerialization); if (property != null) { source.AddProperty(property); } } if (func_3 == null) { func_3 = new Func <JsonProperty, int>(DefaultContractResolver.smethod_8); } return(source.OrderBy <JsonProperty, int>(func_3).ToList <JsonProperty>()); }