• Manual
  • API Documentation
  • Bayat.Json.Serialization
  • JsonPropertyCollection

    Show / Hide Table of Contents
    • Bayat
      • UnityThread
    • Bayat.Core
      • AddReferenceWindow
      • AddReferenceWindow.Dependency
      • AssetReferenceResolver
      • AssetReferenceResolverEditor
      • BayatEditorStyles
      • CoreAssetPostProcessor
      • EditorApplicationUtility
      • MaterialPropertiesResolver
      • MaterialPropertiesResolverEditor
      • ReferenceCheckerWindow
      • ReferenceResolverMode
      • RuntimeMaterialProperties
      • RuntimeMaterialProperty
      • RuntimeMaterialPropertyType
      • SceneReferenceResolver
      • SceneReferenceResolverEditor
      • UnityEditorInternalException
    • Bayat.Core.EditorWindows
      • AssetReferenceManagerWindow
      • AssetReferenceManagerWindow.Styles
      • DatabaseMigrationWindow
      • DatabaseMigrationWindow.SceneMigrationStatus
      • DatabaseMigrationWindow.Styles
      • EditorWindowExtensions
      • EditorWindowUtility
      • EditorWindowWrapper
      • SceneReferenceManagerWindow
      • SceneReferenceManagerWindow.Styles
      • WindowClose
      • WrappedEditorWindow
    • Bayat.Core.Profiling
      • ProfiledSegment
      • ProfiledSegmentCollection
      • ProfilingScope
      • ProfilingUtility
    • Bayat.Core.Reflection
      • AssemblyExtensions
      • Codebase
      • RuntimeCodebase
      • TypeExtensions
      • TypeUtility
    • Bayat.Core.Text
      • StringExtensions
      • StringUtility
    • Bayat.Core.Utilities
      • ExceptionExtensions
      • GuidToReferenceDictionary
      • SerializableDictionary<TKey, TVal>
    • Bayat.Json
      • ConstructorHandling
      • CreateObjectConverterWindow
      • CreateObjectConverterWindow.Styles
      • DateFormatHandling
      • DateParseHandling
      • DateTimeZoneHandling
      • DefaultValueHandling
      • FloatFormatHandling
      • FloatParseHandling
      • Formatting
      • GameObjectSerializationHandler
      • GameObjectSerializationManagerTreeView
      • GameObjectSerializationManagerTreeView.Styles
      • GameObjectSerializationManagerWindow
      • GameObjectSerializationManagerWindow.Styles
      • IArrayPool<T>
      • IJsonLineInfo
      • JsonArrayAttribute
      • JsonConstructorAttribute
      • JsonContainerAttribute
      • JsonContainerType
      • JsonConvert
      • JsonConverter
      • JsonConverterAttribute
      • JsonConverterCollection
      • JsonDefaultSettingsWindow
      • JsonDefaultSettingsWindow.Styles
      • JsonDictionaryAttribute
      • JsonException
      • JsonExtensionDataAttribute
      • JsonIgnoreAttribute
      • JsonObjectAttribute
      • JsonPosition
      • JsonPropertyAttribute
      • JsonReader
      • JsonReader.State
      • JsonReaderException
      • JsonRequiredAttribute
      • JsonSerializationException
      • JsonSerializer
      • JsonSerializerSettings
      • JsonSerializerSettingsPreset
      • JsonTextReader
      • JsonTextWriter
      • JsonToken
      • JsonWriter
      • JsonWriter.State
      • JsonWriterException
      • MemberSerialization
      • MetadataPropertyHandling
      • MissingMemberHandling
      • NullValueHandling
      • ObjectCreationHandling
      • PreserveReferencesHandling
      • ReadType
      • ReferenceLoopHandling
      • Required
      • StringEscapeHandling
      • TypeNameHandling
      • WriteState
    • Bayat.Json.Bson
      • BsonArray
      • BsonBinary
      • BsonBinaryType
      • BsonBinaryWriter
      • BsonObject
      • BsonObjectId
      • BsonProperty
      • BsonReader
      • BsonRegex
      • BsonString
      • BsonToken
      • BsonType
      • BsonValue
      • BsonWriter
    • Bayat.Json.Converters
      • AnimatorConverter
      • AudioClipConverter
      • BinaryConverter
      • BoundsConverter
      • BsonObjectIdConverter
      • ColliderConverter
      • ColorConverter
      • CustomCreationConverter<T>
      • DateTimeConverterBase
      • DiscriminatedUnionConverter
      • EntityKeyMemberConverter
      • ExpandoObjectConverter
      • GameObjectConverter
      • HashSetConverter
      • IsoDateTimeConverter
      • JavaScriptDateTimeConverter
      • KeyValuePairConverter
      • MaterialConverter
      • MaterialConverter.JsonSerializedMaterialProperty
      • Matrix4x4Converter
      • MeshConverter
      • MeshConverter.SerializedIndices
      • MeshFilterConverter
      • ObjectJsonConverter
      • QuaternionConverter
      • RectConverter
      • RectTransformConverter
      • RegexConverter
      • RendererConverter
      • ResolutionConverter
      • ShaderConverter
      • SpriteConverter
      • StringEnumConverter
      • Texture2DConverter
      • TransformConverter
      • UnityBehaviourConverter
      • UnityComponentConverter
      • UnityMonoBehaviourConverter
      • UnityObjectConverter
      • UriConverter
      • VectorConverter
      • VersionConverter
      • XmlNodeConverter
    • Bayat.Json.Linq
      • CommentHandling
      • Extensions
      • IJEnumerable<T>
      • JArray
      • JConstructor
      • JContainer
      • JEnumerable<T>
      • JObject
      • JProperty
      • JPropertyDescriptor
      • JPropertyKeyedCollection
      • JRaw
      • JsonLoadSettings
      • JsonMergeSettings
      • JToken
      • JTokenEqualityComparer
      • JTokenReader
      • JTokenType
      • JTokenWriter
      • JValue
      • LineInfoHandling
      • MergeArrayHandling
      • MergeNullValueHandling
    • Bayat.Json.Linq.JsonPath
      • ArrayIndexFilter
      • ArrayMultipleIndexFilter
      • ArraySliceFilter
      • BooleanQueryExpression
      • CompositeExpression
      • FieldFilter
      • FieldMultipleFilter
      • JPath
      • PathFilter
      • QueryExpression
      • QueryFilter
      • QueryOperator
      • ScanFilter
    • Bayat.Json.Serialization
      • CachedAttributeGetter<T>
      • CamelCasePropertyNamesContractResolver
      • DefaultContractResolver
      • DefaultContractResolver.EnumerableDictionaryWrapper<TEnumeratorKey, TEnumeratorValue>
      • DefaultContractResolverState
      • DefaultReferenceResolver
      • DefaultSerializationBinder
      • DefaultSerializationBinder.TypeNameKey
      • DiagnosticsTraceWriter
      • ErrorContext
      • ErrorEventArgs
      • ExpressionValueProvider
      • ExtensionDataGetter
      • ExtensionDataSetter
      • IAttributeProvider
      • IContractResolver
      • IReferenceResolver
      • ITraceWriter
      • IValueProvider
      • JsonArrayContract
      • JsonContainerContract
      • JsonContract
      • JsonContractType
      • JsonDictionaryContract
      • JsonDynamicContract
      • JsonFormatterConverter
      • JsonISerializableContract
      • JsonLinqContract
      • JsonObjectContract
      • JsonPrimitiveContract
      • JsonProperty
      • JsonPropertyCollection
      • JsonSerializerInternalBase
      • JsonSerializerProxy
      • JsonSerializerReader
      • JsonSerializerReader.CreatorPropertyContext
      • JsonSerializerReader.PropertyPresence
      • JsonSerializerWriter
      • JsonStringContract
      • JsonTypeReflector
      • MemoryTraceWriter
      • ObjectConstructor<T>
      • OnErrorAttribute
      • ReflectionAttributeProvider
      • ReflectionValueProvider
      • ResolverContractKey
      • SerializationCallback
      • SerializationErrorCallback
      • TraceJsonReader
      • TraceJsonWriter
    • Bayat.Json.Shims
      • PreserveAttribute
    • Bayat.Json.Utilities
      • Base64Encoder
      • BidirectionalDictionary<TFirst, TSecond>
      • BufferUtils
      • CollectionUtils
      • CollectionWrapper<T>
      • ConvertUtils
      • ConvertUtils.ConvertResult
      • ConvertUtils.TypeConvertKey
      • Creator<T>
      • DateTimeParser
      • DateTimeUtils
      • DictionaryWrapper<TKey, TValue>
      • DynamicProxy<T>
      • DynamicProxyMetaObject<T>
      • DynamicUtils
      • DynamicUtils.BinderWrapper
      • EnumUtils
      • EnumValue<T>
      • ExpressionReflectionDelegateFactory
      • FSharpFunction
      • FSharpUtils
      • ImmutableCollectionsUtils
      • ImmutableCollectionsUtils.ImmutableCollectionTypeInfo
      • IWrappedCollection
      • IWrappedDictionary
      • JavaScriptUtils
      • JsonTokenUtils
      • LateBoundReflectionDelegateFactory
      • MathUtils
      • MethodCall<T, TResult>
      • MiscellaneousUtils
      • NoThrowExpressionVisitor
      • NoThrowGetBinderMember
      • NoThrowSetBinderMember
      • ParseResult
      • ParserTimeZone
      • PrimitiveTypeCode
      • PropertyNameTable
      • ReflectionDelegateFactory
      • ReflectionMember
      • ReflectionObject
      • ReflectionUtils
      • StringBuffer
      • StringReference
      • StringReferenceExtensions
      • StringUtils
      • ThreadSafeStore<TKey, TValue>
      • TypeInformation
      • ValidationUtils
    • Bayat.SaveSystem
      • AutoSave
      • AutoSaveManager
      • AutoSaveManager.LoadEvent
      • AutoSaveManager.SaveEvent
      • AutoSaveManagerWindow
      • AutoSaveManagerWindow.Styles
      • LoadEventArgs
      • LoadIntoEventArgs
      • SaveEventArgs
      • SaveSystemAPI
      • SaveSystemDefaultSettingsWindow
      • SaveSystemDefaultSettingsWindow.Styles
      • SaveSystemEditorResources
      • SaveSystemJsonSerializer
      • SaveSystemManager
      • SaveSystemSettings
      • SaveSystemSettingsPreset
      • WelcomeWindow
      • WelcomeWindow.Styles
    • Bayat.SaveSystem.Security
      • ISaveSystemEncryption
      • SaveSystemCryptoStream
      • SaveSystemSymmetricCryptoStream
      • SaveSystemSymmetricEncryption
    • Bayat.SaveSystem.Storage
      • BuiltInConnectionFactory
      • ConnectionStringFactory
      • FileStorageStream
      • IConnectionFactory
      • IStorage
      • IStorageStream
      • LocalDiskStorage
      • PlayerPrefsStorage
      • PlayerPrefsStorageStream
      • StorageBackup
      • StorageBase
      • StorageClearOperationResult
      • StorageConnectionString
      • StorageCopyOperationResult
      • StorageDeleteOperationResult
      • StorageFactory
      • StorageFullException
      • StorageInvalidIdentifierException
      • StorageItemNotFoundException
      • StorageListOptions
      • StorageMetaData
      • StorageMoveOperationResult
      • StorageOperationResult
      • StorageStream

    Class JsonPropertyCollection

    A collection of JsonProperty objects.

    Inheritance
    System.Object
    System.Collections.ObjectModel.Collection<JsonProperty>
    System.Collections.ObjectModel.KeyedCollection<System.String, JsonProperty>
    JsonPropertyCollection
    Implements
    System.Collections.Generic.IList<JsonProperty>
    System.Collections.Generic.ICollection<JsonProperty>
    System.Collections.Generic.IReadOnlyList<JsonProperty>
    System.Collections.Generic.IReadOnlyCollection<JsonProperty>
    System.Collections.Generic.IEnumerable<JsonProperty>
    System.Collections.IList
    System.Collections.ICollection
    System.Collections.IEnumerable
    Inherited Members
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.ChangeItemKey(Bayat.Json.Serialization.JsonProperty, System.String)
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.ClearItems()
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.Contains(System.String)
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.GetKeyForItem(Bayat.Json.Serialization.JsonProperty)
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.InsertItem(System.Int32, Bayat.Json.Serialization.JsonProperty)
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.Remove(System.String)
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.RemoveItem(System.Int32)
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.SetItem(System.Int32, Bayat.Json.Serialization.JsonProperty)
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.Comparer
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.Dictionary
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.Item[System.String]
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IList.get_Item(System.Int32)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IList.set_Item(System.Int32, System.Object)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.Add(Bayat.Json.Serialization.JsonProperty)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.Clear()
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.ClearItems()
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.Contains(Bayat.Json.Serialization.JsonProperty)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.CopyTo(Bayat.Json.Serialization.JsonProperty[], System.Int32)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.GetEnumerator()
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.IndexOf(Bayat.Json.Serialization.JsonProperty)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.Insert(System.Int32, Bayat.Json.Serialization.JsonProperty)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.InsertItem(System.Int32, Bayat.Json.Serialization.JsonProperty)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.Remove(Bayat.Json.Serialization.JsonProperty)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.RemoveAt(System.Int32)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.RemoveItem(System.Int32)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.SetItem(System.Int32, Bayat.Json.Serialization.JsonProperty)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.ICollection.CopyTo(System.Array, System.Int32)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IEnumerable.GetEnumerator()
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IList.Add(System.Object)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IList.Contains(System.Object)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IList.IndexOf(System.Object)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IList.Insert(System.Int32, System.Object)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IList.Remove(System.Object)
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.Count
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.Item[System.Int32]
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.Items
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.Generic.ICollection<Bayat.Json.Serialization.JsonProperty>.IsReadOnly
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.ICollection.IsSynchronized
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.ICollection.SyncRoot
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IList.IsFixedSize
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IList.IsReadOnly
    System.Collections.ObjectModel.Collection<Bayat.Json.Serialization.JsonProperty>.System.Collections.IList.Item[System.Int32]
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.ToString()
    Namespace: Bayat.Json.Serialization
    Assembly: Bayat.Json.Runtime.dll
    Syntax
    public class JsonPropertyCollection : KeyedCollection<string, JsonProperty>, IList<JsonProperty>, ICollection<JsonProperty>, IReadOnlyList<JsonProperty>, IReadOnlyCollection<JsonProperty>, IEnumerable<JsonProperty>, IList, ICollection, IEnumerable

    Constructors

    | Improve this Doc View Source

    JsonPropertyCollection(Type)

    Initializes a new instance of the JsonPropertyCollection class.

    Declaration
    public JsonPropertyCollection(Type type)
    Parameters
    Type Name Description
    System.Type type

    The type.

    Methods

    | Improve this Doc View Source

    AddProperty(JsonProperty)

    Adds a JsonProperty object.

    Declaration
    public void AddProperty(JsonProperty property)
    Parameters
    Type Name Description
    JsonProperty property

    The property to add to the collection.

    | Improve this Doc View Source

    GetClosestMatchProperty(String)

    Gets the closest matching JsonProperty object. First attempts to get an exact case match of propertyName and then a case insensitive match.

    Declaration
    public JsonProperty GetClosestMatchProperty(string propertyName)
    Parameters
    Type Name Description
    System.String propertyName

    Name of the property.

    Returns
    Type Description
    JsonProperty

    A matching property if found.

    | Improve this Doc View Source

    GetKeyForItem(JsonProperty)

    When implemented in a derived class, extracts the key from the specified element.

    Declaration
    protected override string GetKeyForItem(JsonProperty item)
    Parameters
    Type Name Description
    JsonProperty item

    The element from which to extract the key.

    Returns
    Type Description
    System.String

    The key for the specified element.

    Overrides
    System.Collections.ObjectModel.KeyedCollection<System.String, Bayat.Json.Serialization.JsonProperty>.GetKeyForItem(Bayat.Json.Serialization.JsonProperty)
    | Improve this Doc View Source

    GetProperty(String, StringComparison)

    Gets a property by property name.

    Declaration
    public JsonProperty GetProperty(string propertyName, StringComparison comparisonType)
    Parameters
    Type Name Description
    System.String propertyName

    The name of the property to get.

    System.StringComparison comparisonType

    Type property name string comparison.

    Returns
    Type Description
    JsonProperty

    A matching property if found.

    Implements

    System.Collections.Generic.IList<T>
    System.Collections.Generic.ICollection<T>
    System.Collections.Generic.IReadOnlyList<T>
    System.Collections.Generic.IReadOnlyCollection<T>
    System.Collections.Generic.IEnumerable<T>
    System.Collections.IList
    System.Collections.ICollection
    System.Collections.IEnumerable

    Extension Methods

    CollectionUtils.AddRange<T>(IList<T>, IEnumerable<T>)
    CollectionUtils.AddDistinct<T>(IList<T>, T)
    CollectionUtils.AddDistinct<T>(IList<T>, T, IEqualityComparer<T>)
    CollectionUtils.ContainsValue<TSource>(IEnumerable<TSource>, TSource, IEqualityComparer<TSource>)
    CollectionUtils.AddRangeDistinct<T>(IList<T>, IEnumerable<T>, IEqualityComparer<T>)
    CollectionUtils.IndexOf<T>(IEnumerable<T>, Func<T, Boolean>)
    StringUtils.ForgivingCaseSensitiveFind<TSource>(IEnumerable<TSource>, Func<TSource, String>, String)
    StringExtensions.ToSeparatedString(IEnumerable, String)
    StringExtensions.ToCommaSeparatedString(IEnumerable)
    StringExtensions.ToLineSeparatedString(IEnumerable)
    • Improve this Doc
    • View Source
    • 0 Comments
    In This Article
    • Constructors
      • JsonPropertyCollection(Type)
    • Methods
      • AddProperty(JsonProperty)
      • GetClosestMatchProperty(String)
      • GetKeyForItem(JsonProperty)
      • GetProperty(String, StringComparison)
    • Implements
    • Extension Methods